[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
It is possible to enter the model dimensions explicitely, instead of
generating them automatically, as it was done previously.
This feature is turned on by sel dimetaphi
in ‘selseq.kumac’ with cmz
and dimetaphi
added to the SEL
variable in
the ‘Makefile’ with make.
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
The dimension of the model is entered in the sequence ‘dimetaphi’,
using the fortran parameter np
for eta(.)
and
mp
for ff(.)
.
For the Lotka-Volterra model, we have two cell components and only one transfer.
parameter (np=2,mp=1);
You should not change the layout of the parameter statement as the mortran preprocessor matches the line.
You also have to provide other parameters even if you don’t have any
use for them. If you don’t it will trigger fortran errors.
It includes the maxstep
parameter that can have any value but 0,
lp
and mobs
that should be 0 in the example, and nxp
,
nyp
and nzp
that should also be 0.
The layout is the following:
parameter (np=2,mp=1); parameter (mobs=0); parameter (nxp=0,nyp=0,nzp=0); parameter (lp=0); parameter (maxstep=1);
If there are observations, (see Observations), the
size of the observation vector is set in the ‘dimetaphi’ sequence
by the mobs
parameter. For example if there is one observation:
parameter (mobs=1);
To specify parameters (see Parameters), the number of such parameters
has to be declared in ‘dimetaphi’ with the parameter lp
.
Then, if there are two parameters, they are first declared with
parameter (lp=2);
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
When sizes are explicit, another possibility exists for entering
the model equations. The use of symbolic names, as described in
Model equations is still possible, and it also becomes possible to
set directly the equations associated with the eta(.)
and ff(.)
vectors.
In case the symbolic names are not used,
the model equations for cells and transfers are entered using a mortran macro,
f_set
(4), setting the eta(.)
evolution with
deta_tef(.)
and the transfer definitions ff(.)
with Phi_tef(.)
.
This macro defines the transfer i static equation.
f
is a fortran
expression which may be function of cell state variables,
‘eta(1)’…‘eta(np)’ and transfers
‘ff(1)’…‘ff(mp)’.
In the case of the predator-prey model, the transfer definition for φmeet is:
f_set Phi_tef(1) = eta(1)*eta(2);
This macro defines the cell state component i time evolution model.
g
is a expression which may be function of cell state variables,
‘eta(1)’…‘eta(np)’ and transfers
‘ff(1)’…‘ff(mp)’.
The two cell equations of the predator-prey model are, with index 1 for the prey ( ηprey) and index 2 for the predator ( ηpred):
f_set deta_tef(1) = apar*eta(1)-apar*ff(1); f_set deta_tef(2) = - cpar*eta(2) + cpar*ff(1);
The whole model is:
!%%%%%%%%%%%%%%%%%%%%%% ! Transfer definition !%%%%%%%%%%%%%%%%%%%%%% ! rencontres (meeting) f_set Phi_tef(1) = eta(1)*eta(2); !%%%%%%%%%%%%%%%%%%%%%% ! Cell definition !%%%%%%%%%%%%%%%%%%%%%% ! eta(1) : prey ! eta(2) : predator f_set deta_tef(1) = apar*eta(1)-apar*ff(1); f_set deta_tef(2) = - cpar*eta(2) + cpar*ff(1);
The starting points for cells are entered like:
! initial state ! ------------- eta(1) = 1.; eta(2) = 1.;
If there are observations, they are entered as special transferts with
index above mp
, for example:
f_set Phi_tef(mp+1) = ff(1) ;
[Contents] | [Index] | [ ? ] |
This document was generated on May 20, 2012 using texi2any.