Function that returns a setted model from the parameters vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(FittingProblem), | intent(inout) | :: | problem |
Fitting problem to optimize |
||
real(kind=pr), | intent(in) | :: | X(:) |
Vector of parameters to fit |
This derived type holds all the relevant information for a parameter
optimization problem. It keeps the base model structure that will be
optimized and a procedure get_model_from_X
that should reconstruct
the model with the desired parameters to optimize.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(EquilibriumState), | public, | allocatable | :: | experimental_points(:) |
Experimental points to fit |
||
class(ArModel), | public, | allocatable | :: | model |
Residual Helmholtz Model to fit |
||
logical, | public | :: | verbose | = | .false. |
If true log the fitting process |
procedure(model_from_X), public, deferred :: get_model_from_X |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=pr), | intent(inout) | :: | X(:) |
Vector of parameters to fit |
||
class(Optimizer), | intent(inout) | :: | opt |
Optimizer object, bsaed on the |
||
class(FittingProblem), | intent(inout), | optional | :: | data |
Fitting problem to optimize |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(ArModel), | intent(in) | :: | model | |||
type(EquilibriumState), | intent(in) | :: | exp_point | |||
type(EquilibriumState), | intent(out) | :: | model_point | |||
logical, | intent(out) | :: | converged |
Error function for phase-equilibria optimization. Using two-phase points and an error function of:
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=pr), | intent(in) | :: | X(:) |
Vector of parameters |
||
real(kind=pr), | intent(out) | :: | Fobj |
Objective function |
||
real(kind=pr), | intent(out), | optional | :: | dF(:) |
Gradient of the objective function, only exists to be consistent
with the |
|
class(*), | intent(inout), | optional | :: | func_data |