Nodes of different colours represent the following:
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
update_specification
Change the specified variable for the next step.
Description
Using the information of a converged point and the Jacobian matrix of
the function. It is possible to determine the sensitivity of the
variables with respect to the specification. This information is used
to update the specification for the next point. Choosing the variable
with the highest sensitivity.
This can be done by solving the system of equations:
for the vector. The variable with the highest value
of is chosen as the new specification.
References
Arguments
Type
Intent
Optional
Attributes
Name
integer,
intent(in)
::
its
Iterations to solve the current point.
integer,
intent(in)
::
nc
Number of components in the mixture.
integer,
intent(in)
::
np
Number of main phases.
real(kind=pr),
intent(inout)
::
X(:)
Vector of variables.
real(kind=pr),
intent(inout)
::
dF(:,:)
Jacobian matrix.
real(kind=pr),
intent(inout)
::
dXdS(:)
Sensitivity of the variables wrt the specification.
integer,
intent(inout)
::
ns
Number of the specified variable.
real(kind=pr),
intent(inout)
::
S
Specified value.
real(kind=pr),
intent(inout)
::
dS
Step size of the specification for the next point.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Variables
Type
Visibility
Attributes
Name
Initial
real(kind=pr),
private
::
cf
Critical factor, defined by Lingfei Xu & Huazhou Li*
real(kind=pr),
private
::
dFdS(size(X))
Sensitivity of the functions wrt the specification.