Diana
0.8.3
|
#include <IDianaSensDAESO.hpp>
Public Member Functions | |
virtual | ~IDianaSensDAESO () |
virtual CapeLong | GetNumSensParameters ()=0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual CapeLong | GetNumSensInitStates ()=0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual const CapeArrayLong & | GetSensParametersIndices () const =0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual const CapeArrayLong & | GetSensInitStatesIndices () const =0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual const CapeArrayDouble & | GetSensParameters () const =0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual void | SetSensParameters (const Common::Types::CapeArrayDouble &pars)=0 throw (ECapeUnknown, ECapeFailedInitialisation) |
virtual const DianaSparseArray & | GetSensParJacobianValues ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual const CapeArrayDouble & | GetSensInitStates ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation) |
virtual void | SetSensInitStates (const Common::Types::CapeArrayDouble &states)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation) |
virtual Common::Types::CapeArrayDouble | GetAllModelVariables ()=0 |
virtual void | SetAllModelVariables (const Common::Types::CapeArrayDouble &vars)=0 |
virtual Common::Types::CapeArrayDouble | GetAllModelDerivatives ()=0 |
virtual void | SetAllModelDerivatives (const Common::Types::CapeArrayDouble &vars)=0 |
virtual const CapeArrayDouble & | GetAllModelResiduals ()=0 throw (ECapeUnknown, ECapeBadInvOrder, ECapeFailedInitialisation) |
virtual const DianaSparseArray & | GetAllModelJacobianValues () const =0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual const Diana::DianaSparseArray & | GetAllModelDiffJacobianValues () const =0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual Common::Types::CapeArrayDouble | GetAllSensitivities ()=0 |
virtual void | SetAllSensitivities (const Common::Types::CapeArrayDouble &vars)=0 |
virtual void | SetFixedVariables (const Common::Types::CapeArrayLong &varIndices, const Common::Types::CapeArrayDouble &varValues)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds, Common::Error::ECapeNoImpl) |
virtual void | SetAllVariables (const Common::Types::CapeArrayDouble &varValues)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual void | SetVariables (const Common::Types::CapeArrayLong &varIndices, const Common::Types::CapeArrayDouble &varValues)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual const Common::Types::CapeArrayDouble & | GetAllVariables ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder) |
virtual Common::Types::CapeArrayDouble | GetVariables (const Common::Types::CapeArrayLong &varIndices)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual const Common::Types::CapeArrayDouble & | GetAllResiduals ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder, Common::Error::ECapeFailedInitialisation) |
virtual const Diana::DianaSparseArray & | GetJacobianStruct ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual const Diana::DianaSparseArray & | GetAllJacobianValues ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual void | SetVariablesIndex (const Common::Types::CapeArrayLong &varIndexes)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeOutOfBounds, Common::Error::ECapeNoImpl) |
virtual const Common::Types::CapeArrayDouble & | GetLowerBounds ()=0 throw (Common::Error::ECapeUnknown) |
virtual const Common::Types::CapeArrayDouble & | GetUpperBounds ()=0 throw (Common::Error::ECapeUnknown) |
virtual void | SetAllDerivatives (const Common::Types::CapeArrayDouble &varValues)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual const Common::Types::CapeArrayDouble & | GetAllDerivatives ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder) |
virtual Common::Types::CapeArrayDouble | GetDerivatives (const Common::Types::CapeArrayLong &varIndices)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual void | SetDerivatives (const Common::Types::CapeArrayLong &varIndices, const Common::Types::CapeArrayDouble &varValues)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) |
virtual const Diana::DianaSparseArray & | GetDiffJacobianStruct ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual const Diana::DianaSparseArray & | GetAllDiffJacobianValues ()=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) |
virtual void | SetIndependentVar (Common::Types::CapeDouble indVar)=0 throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument) |
virtual Common::Types::CapeDouble | GetIndependentVar ()=0 throw (Common::Error::ECapeUnknown) |
Special ESO to calculate a model with certain sensitivities automatically.
virtual ~IDianaSensDAESO | ( | ) | [inline, virtual] |
Virtual default destructor.
virtual const Common::Types::CapeArrayDouble& GetAllDerivatives | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder) [pure virtual] |
Gets the values of the derivatives for all the variables. The length of the array returned will be equal to the number of variables, but the values of derivatives which do not appear in the equation system may be meaningless.
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual const Diana::DianaSparseArray& GetAllDiffJacobianValues | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) [pure virtual] |
Returns a matrix object whose GetValues method will provide the differential Jacobian values at the ESO s current variable values each time it is called (the values of entries indicated as uncomputable in the matrix returned by GetDiffJacobianStruct will be meaningless, but the call to GetValues will not cause an error simply because such entries exist).
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual const Diana::DianaSparseArray& GetAllJacobianValues | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) [pure virtual] |
Returns a matrix object whose GetValues method will provide the Jacobian values at the ESO's current variable values each time it is called (the values of entries indicated as uncomputable in the matrix returned by GetJacobianStruct will be meaningless, but the call to GetValues will not cause an error simply because such entries exist).
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual Common::Types::CapeArrayDouble GetAllModelDerivatives | ( | ) | [pure virtual] |
Get only the derivatives of the model
Implemented in DianaSensDAESO.
virtual const CapeArrayDouble& GetAllModelResiduals | ( | ) | throw (ECapeUnknown, ECapeBadInvOrder, ECapeFailedInitialisation) [pure virtual] |
Get only the residuals of the model
Implemented in DianaSensDAESO.
virtual Common::Types::CapeArrayDouble GetAllModelVariables | ( | ) | [pure virtual] |
Get only the states of the model
Implemented in DianaSensDAESO.
virtual const Common::Types::CapeArrayDouble& GetAllResiduals | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder, Common::Error::ECapeFailedInitialisation) [pure virtual] |
virtual Common::Types::CapeArrayDouble GetAllSensitivities | ( | ) | [pure virtual] |
Get the vector of all sensitivities. These are 2 Sensitivity-matrices inlined: first
and then
Implemented in DianaSensDAESO.
virtual const Common::Types::CapeArrayDouble& GetAllVariables | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeBadInvOrder) [pure virtual] |
virtual Common::Types::CapeArrayDouble GetDerivatives | ( | const Common::Types::CapeArrayLong & | varIndices | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Gets the value of a subset of the derivatives.
varIndices | the indices of the variables whose derivatives we wish to get. |
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual const Diana::DianaSparseArray& GetDiffJacobianStruct | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) [pure virtual] |
Returns a matrix object which contains information on the structure of the differential Jacobian matrix. The GetValues method of this object will provide values encoded as follows:
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual Common::Types::CapeDouble GetIndependentVar | ( | ) | throw (Common::Error::ECapeUnknown) [pure virtual] |
Gets the current value of the independent variable in the DAESO.
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual const Diana::DianaSparseArray& GetJacobianStruct | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) [pure virtual] |
Returns a matrix object which contains information on the structure of the Jacobian matrix. The GetValues method of this object will provide values encoded as follows :
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual const Common::Types::CapeArrayDouble& GetLowerBounds | ( | ) | throw (Common::Error::ECapeUnknown) [pure virtual] |
Returns array of lower bounds for the state vector.
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual CapeLong GetNumSensInitStates | ( | ) | throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Get the number of initial states sensitivities
Implemented in DianaSensDAESO.
virtual CapeLong GetNumSensParameters | ( | ) | throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Get the model. The user is allowed to read the data from the model, but he should not change the values through the direct methods of the model. The SensDAESO relies on the fact, that it controls the model state allone. Get the number of sensitivity parameters
Implemented in DianaSensDAESO.
virtual const CapeArrayDouble& GetSensInitStates | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation) [pure virtual] |
Get the values of the sensitivity-initstates
Implemented in DianaSensDAESO.
virtual const CapeArrayLong& GetSensInitStatesIndices | ( | ) | const throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Get the indices of initial states sensitivities
Implemented in DianaSensDAESO.
virtual const CapeArrayDouble& GetSensParameters | ( | ) | const throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Get the values of the sensitivity-parameters.
Implemented in DianaSensDAESO.
virtual const CapeArrayLong& GetSensParametersIndices | ( | ) | const throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Get the indices of sensitivity parameters
Implemented in DianaSensDAESO.
virtual const DianaSparseArray& GetSensParJacobianValues | ( | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeNoImpl) [pure virtual] |
Get the Jacobian for the sensitivity-parameters
Implemented in DianaSensDAESO.
virtual const Common::Types::CapeArrayDouble& GetUpperBounds | ( | ) | throw (Common::Error::ECapeUnknown) [pure virtual] |
Returns array of upper bounds for the state vector.
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual Common::Types::CapeArrayDouble GetVariables | ( | const Common::Types::CapeArrayLong & | varIndices | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Gets the value of a subset of the variables.
varIndices | the indices of the variables we wish to get. |
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual void SetAllDerivatives | ( | const Common::Types::CapeArrayDouble & | varValues | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Sets the numerical value of all the derivatives. The length of the array supplied must equal the number of variables: values for derivatives which do not appear in any of the equations can be ignored.
varValues | the values of the derivatives. |
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual void SetAllModelDerivatives | ( | const Common::Types::CapeArrayDouble & | vars | ) | [pure virtual] |
virtual void SetAllModelVariables | ( | const Common::Types::CapeArrayDouble & | vars | ) | [pure virtual] |
virtual void SetAllSensitivities | ( | const Common::Types::CapeArrayDouble & | vars | ) | [pure virtual] |
virtual void SetAllVariables | ( | const Common::Types::CapeArrayDouble & | varValues | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Sets the value of all variables of this ESO.
varValues | the values of all the variables we wish to set |
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual void SetDerivatives | ( | const Common::Types::CapeArrayLong & | varIndices, |
const Common::Types::CapeArrayDouble & | varValues | ||
) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Sets the value of a subset of the derivatives.
varIndices | the indices of the variables whose derivatives we wish to get. |
varValues | the values of all the derivatives we wish to set |
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual void SetFixedVariables | ( | const Common::Types::CapeArrayLong & | varIndices, |
const Common::Types::CapeArrayDouble & | varValues | ||
) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds, Common::Error::ECapeNoImpl) [pure virtual] |
Sets the value of some variables and marks these variables as fixed.
varIndices | the indices of the variables we wish to set |
varValues | the values of the variables we wish to set |
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual void SetIndependentVar | ( | Common::Types::CapeDouble | indVar | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument) [pure virtual] |
Sets the value of the independent variable in the DAESO.
indVar | the value of the independent variable |
Implements ICapeNumericDAESO.
Implemented in DianaSensDAESO.
virtual void SetSensInitStates | ( | const Common::Types::CapeArrayDouble & | states | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeFailedInitialisation) [pure virtual] |
Set the values of the sensitivity-parameters
Implemented in DianaSensDAESO.
virtual void SetSensParameters | ( | const Common::Types::CapeArrayDouble & | pars | ) | throw (ECapeUnknown, ECapeFailedInitialisation) [pure virtual] |
Set the values of the sensitivity-parameters
Implemented in DianaSensDAESO.
virtual void SetVariables | ( | const Common::Types::CapeArrayLong & | varIndices, |
const Common::Types::CapeArrayDouble & | varValues | ||
) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeBadInvOrder, Common::Error::ECapeOutOfBounds) [pure virtual] |
Sets the value of some variables.
varIndices | the indices of the variables we wish to set |
varValues | the values of all the variables we wish to set |
Implements ICapeNumericESO.
Implemented in DianaSensDAESO.
virtual void SetVariablesIndex | ( | const Common::Types::CapeArrayLong & | varIndexes | ) | throw (Common::Error::ECapeUnknown, Common::Error::ECapeInvalidArgument, Common::Error::ECapeOutOfBounds, Common::Error::ECapeNoImpl) [pure virtual] |