NcmODEEval

NcmODEEval — Abstract class for ODE system evaluation

Properties

guint sys-size Read / Write / Construct

Types and Values

Object Hierarchy

    GEnum
    ╰── NcmODEEvalReturn
    GObject
    ╰── NcmODEEval

Description

This class implement an abstract interface between the ODE system and the evaluation of $\mathrm{d}f$ and $J$.

Functions

NcmODEEvalF ()

gint
(*NcmODEEvalF) (NcmODEEval *ode_eval,
                const guint sys_size,
                const gdouble t,
                const gdouble * restrict f,
                gdouble * restrict df);

NcmODEEvalJDense ()

gint
(*NcmODEEvalJDense) (NcmODEEval *ode_eval,
                     const guint sys_size,
                     const gdouble t,
                     const gdouble * restrict f,
                     gdouble ** restrict J_col);

ncm_ode_eval_ref ()

NcmODEEval *
ncm_ode_eval_ref (NcmODEEval *ode_eval);

Increase the reference of ode_eval by one.

Parameters

ode_eval

a NcmODEEval

 

Returns

ode_eval .

[transfer full]


ncm_ode_eval_free ()

void
ncm_ode_eval_free (NcmODEEval *ode_eval);

Decrease the reference count of ode_eval by one.

Parameters

ode_eval

a NcmODEEval

 

ncm_ode_eval_clear ()

void
ncm_ode_eval_clear (NcmODEEval **ode_eval);

Decrease the reference count of ode_eval by one, and sets the pointer *ode_eval to NULL.

Parameters

ode_eval

a NcmODEEval

 

ncm_ode_eval_df ()

gint
ncm_ode_eval_df (NcmODEEval *ode_eval,
                 const guint sys_size,
                 const gdouble t,
                 const gdouble * restrict f,
                 gdouble * restrict df);

Computes the time derivatives of the ODE system in df using the current state in f .

Return: status

[virtual df]

Parameters

ode_eval

a NcmODEEval

 

sys_size

ODE system size

 

t

the current time $t$

 

f

ODE system current state $f$.

[array length=sys_size]

df

Vector to hold the time derivatives $\mathrm{d}f$.

[inout][array length=sys_size]

ncm_ode_eval_J_dense ()

gint
ncm_ode_eval_J_dense (NcmODEEval *ode_eval,
                      const guint sys_size,
                      const gdouble t,
                      const gdouble * restrict f,
                      gdouble ** restrict J_col);

Computes the jacobian matrix $J$ of the ODE system in J_col using the current state in f .

Return: status

[virtual J_dense]

Parameters

ode_eval

a NcmODEEval

 

sys_size

ODE system size

 

t

the current time $t$

 

f

ODE system current state $f$.

[array length=sys_size]

J_col

Array containing the Jacobian columns.

[array length=sys_size]

NCM_ODE_EVAL_DECLARE_IMPL()

#define             NCM_ODE_EVAL_DECLARE_IMPL(ModuleObjName, module_obj_name, MODULE, OBJ_NAME, LocalStruct)

NCM_ODE_EVAL_DEFINE_IMPL()

#define             NCM_ODE_EVAL_DEFINE_IMPL(ModuleObjName, module_obj_name, MODULE, OBJ_NAME, LocalStruct, df0, J_dense0, clean_ls0)

Types and Values

enum NcmODEEvalReturn

NcmODEEval return codes.

Members

NCM_ODE_EVAL_RETURN_SUCCESS

computation done with success

 

Property Details

The “sys-size” property

  “sys-size”                 guint

ODE system size.

Flags: Read / Write / Construct

Allowed values: >= 1

Default value: 1