Differences From Artifact [7d16dae29a]:

To Artifact [2109324cfc]:


1
2
3
4
5
6
7



8
9
10
11
12
13
14
15
16
17
18


19
20
function [x] = mtt_implicit(x,dx,AA,AAx,dt,Nx,open); # Implicit update

## ###############################################################
## ## Version control history
## ###############################################################
## ## $Id$
## ## $Log$



## ## Revision 1.1  1999/04/02 06:23:20  peterg
## ## Initial revision
## ##
## ###############################################################

## Copyright (C) 1999 by P.J. Gawthrop

  I_open = nozeros(open.*[1:Nx]'); # Indices of open switches
  x(I_open) = 0.0;		# Open switches have zero state
  I = nozeros(!open.*[1:Nx]');	# Indices of states to update
  x(I) = AA(I,I)\(AAx(I) + dx(I)*dt);	# Implicit update (except open switches);



endfunction







>
>
>







<
<


>
>


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17


18
19
20
21
22
23
function [x] = mtt_implicit(x,dx,AA,AAx,dt,Nx,open); # Implicit update

## ###############################################################
## ## Version control history
## ###############################################################
## ## $Id$
## ## $Log$
## ## Revision 1.2  1999/04/20 00:58:22  peterg
## ## Set open-switch states to zero
## ##
## ## Revision 1.1  1999/04/02 06:23:20  peterg
## ## Initial revision
## ##
## ###############################################################

## Copyright (C) 1999 by P.J. Gawthrop



  I = nozeros(!open.*[1:Nx]');	# Indices of states to update
  x(I) = AA(I,I)\(AAx(I) + dx(I)*dt);	# Implicit update (except open switches);
  I_open = nozeros(open.*[1:Nx]'); # Indices of open switches
  x(I_open) = 0.0;		# Open switches have zero state

endfunction

MTT: Model Transformation Tools
GitHub | SourceHut | Sourceforge | Fossil RSS ]