tem_varSys_append_stateVar Subroutine

public subroutine tem_varSys_append_stateVar(me, varname, nComponents, method_data, get_point, get_element, set_params, get_params, setup_indices, get_valOfIndex, pos, wasAdded)

Append a new state variable to the variable system.

Note that the actual data on how to access the state has to be encoded in the method_data pointer. The callers therefore have to ensure the consistency of those access definitions. nComponents has to be at least 1.

Arguments

TypeIntentOptionalAttributesName
type(tem_varSys_type), intent(inout) :: me

Variable system to append the state variable to.

character(len=*), intent(in) :: varname

Variable to append to the state.

integer, intent(in) :: nComponents

Number of components in this variable.

type(c_ptr), intent(in) :: method_data

Data that is required by the methods to obtain the variable.

procedure(tem_varSys_proc_point), pointer:: get_point

Procedure which allows the retrieval of the variable at given points.

procedure(tem_varSys_proc_element), pointer:: get_element

Procedure which allows the retrieval of the variable in an element.

procedure(tem_varSys_proc_setParams), optional pointer:: set_params

Procedure which allows to set parameter in method_data

procedure(tem_varSys_proc_getParams), optional pointer:: get_params

Procedure which allows to get parameter in method_data

procedure(tem_varSys_proc_setupIndices), pointer:: setup_indices

Procedure to setup growing array of points, variable value in method_data and return index of points set

procedure(tem_varSys_proc_getValOfIndex), pointer:: get_valOfIndex

Procedure which allows to retrieval of the variable at point or val array index

integer, intent(out), optional :: pos

Position of the variable in the system.

logical, intent(out), optional :: wasAdded

Indicator, if the variable was actually added to the system.


Calls

proc~~tem_varsys_append_statevar~~CallsGraph proc~tem_varsys_append_statevar tem_varSys_append_stateVar interface~append~21 append proc~tem_varsys_append_statevar->interface~append~21 proc~append_da_veclabel append_da_veclabel interface~append~21->proc~append_da_veclabel proc~append_da_label append_da_label interface~append~21->proc~append_da_label interface~expand~19 expand proc~append_da_veclabel->interface~expand~19 proc~append_da_label->interface~expand~19 interface~sortedposofval~4 sortedposofval proc~append_da_label->interface~sortedposofval~4 proc~expand_da_label expand_da_label interface~expand~19->proc~expand_da_label proc~sortposofval_label sortposofval_label interface~sortedposofval~4->proc~sortposofval_label

Called by

proc~~tem_varsys_append_statevar~~CalledByGraph proc~tem_varsys_append_statevar tem_varSys_append_stateVar program~tem_varsys_test tem_varSys_test program~tem_varsys_test->proc~tem_varsys_append_statevar program~tem_varsys_statevar_test tem_varSys_stateVar_test program~tem_varsys_statevar_test->proc~tem_varsys_append_statevar program~tem_varsys_derivevar_test tem_varSys_deriveVar_test program~tem_varsys_derivevar_test->proc~tem_varsys_append_statevar

Contents


Variables

TypeVisibilityAttributesNameInitial
logical, public :: newVar
type(tem_varSys_op_type), public :: state_access
integer, public :: iComp
integer, public :: varPos