public recursive subroutine evaluate_add_spacetime_vectorByTreeID(fun, varSys, elempos, time, tree, nElems, nDofs, res)
Call the spacetime function for vector variable,
which are stored in method_data which intern
points to tem_st_fun_listElem_type.
This spacetime function can be used as a analytical solution for reference.
NOTE: nDofs is not used by this routine. So, to evaluate spacetime function
for nDofs in an element, use tem_varSys_proc_point interface.
\verbatim
-- in lua file, one can define it as following:
variable = {{
name = 'reference',
ncomponents = 3,
vartype = st_fun,
st_fun = luaFun
},
...
}
\endverbatim
The interface has to comply to the abstract interface
tem_varSys_module#tem_varSys_proc_element.
Arguments
Type Intent Optional Attributes Name
class(tem_varSys_op_type ),
intent(in)
::
fun Description of the method to obtain the variables, here some preset
values might be stored, like the space time function to use or the
required variables.
type(tem_varSys_type ),
intent(in)
::
varSys The variable system to obtain the variable from.
integer,
intent(in)
::
elempos (:)Position of the TreeID of the element to get the variable for in the
global treeID list.
type(tem_time_type ),
intent(in)
::
time Point in time at which to evaluate the variable.
type(treelmesh_type ),
intent(in)
::
tree global treelm mesh info
integer,
intent(in)
::
nElems Number of values to obtain for this variable (vectorized access).
integer,
intent(in)
::
nDofs Number of degrees of freedom within an element.
real(kind=rk),
intent(out)
::
res (:)Resulting values for the requested variable.
Linearized array dimension:
(n requested entries) x (nComponents of this variable)
x (nDegrees of freedom)
Access: (iElem-1)fun%nComponents nDofs +
(iDof-1)*fun%nComponents + iComp
Calls
proc~~evaluate_add_spacetime_vectorbytreeid~~CallsGraph
proc~evaluate_add_spacetime_vectorbytreeid
evaluate_add_spacetime_vectorByTreeID
tem_positioninsorted
tem_positioninsorted
proc~evaluate_add_spacetime_vectorbytreeid->tem_positioninsorted
proc~tem_abort
tem_abort
proc~evaluate_add_spacetime_vectorbytreeid->proc~tem_abort
interface~tem_spacetime_for
tem_spacetime_for
proc~evaluate_add_spacetime_vectorbytreeid->interface~tem_spacetime_for
mpi_abort
mpi_abort
proc~tem_abort->mpi_abort
proc~tem_spacetime_scalar_for_index
tem_spacetime_scalar_for_index
interface~tem_spacetime_for->proc~tem_spacetime_scalar_for_index
proc~tem_spacetime_for_stcoord
tem_spacetime_for_stcoord
interface~tem_spacetime_for->proc~tem_spacetime_for_stcoord
proc~tem_spacetime_for_coord
tem_spacetime_for_coord
interface~tem_spacetime_for->proc~tem_spacetime_for_coord
proc~tem_spacetime_vector_for_coord
tem_spacetime_vector_for_coord
interface~tem_spacetime_for->proc~tem_spacetime_vector_for_coord
proc~tem_spacetime_vector_for_index
tem_spacetime_vector_for_index
interface~tem_spacetime_for->proc~tem_spacetime_vector_for_index
proc~tem_spacetime_vector_for_treeids
tem_spacetime_vector_for_treeIDs
interface~tem_spacetime_for->proc~tem_spacetime_vector_for_treeids
proc~tem_spacetime_for_treeids
tem_spacetime_for_treeIDs
interface~tem_spacetime_for->proc~tem_spacetime_for_treeids
proc~tem_spacetime_scalar_for_index->proc~tem_spacetime_for_coord
proc~tem_temporal_for
tem_temporal_for
proc~tem_spacetime_scalar_for_index->proc~tem_temporal_for
tem_precice_read
tem_precice_read
proc~tem_spacetime_scalar_for_index->tem_precice_read
interface~tem_spatial_for
tem_spatial_for
proc~tem_spacetime_scalar_for_index->interface~tem_spatial_for
interface~tem_spacetime_lua_for
tem_spacetime_lua_for
proc~tem_spacetime_scalar_for_index->interface~tem_spacetime_lua_for
proc~tem_spacetime_for_stcoord->proc~tem_spacetime_for_coord
proc~tem_spacetime_for_coord->proc~tem_abort
proc~tem_spacetime_for_coord->proc~tem_temporal_for
proc~tem_eval_acoustic_pulse
tem_eval_acoustic_pulse
proc~tem_spacetime_for_coord->proc~tem_eval_acoustic_pulse
proc~tem_polygon_material_movement_single
tem_polygon_material_movement_single
proc~tem_spacetime_for_coord->proc~tem_polygon_material_movement_single
proc~tem_eval_miescatter_magnx
tem_eval_miescatter_magnx
proc~tem_spacetime_for_coord->proc~tem_eval_miescatter_magnx
proc~tem_eval_cylindricalwave
tem_eval_cylindricalWave
proc~tem_spacetime_for_coord->proc~tem_eval_cylindricalwave
proc~tem_spacetime_for_coord->interface~tem_spatial_for
proc~tem_spacetime_for_coord->interface~tem_spacetime_lua_for
proc~tem_eval_miescatter_magny
tem_eval_miescatter_magny
proc~tem_spacetime_for_coord->proc~tem_eval_miescatter_magny
proc~tem_polygon_material_movement_multi
tem_polygon_material_movement_multi
proc~tem_spacetime_for_coord->proc~tem_polygon_material_movement_multi
proc~tem_eval_miescatter_displz
tem_eval_miescatter_displz
proc~tem_spacetime_for_coord->proc~tem_eval_miescatter_displz
proc~tem_spacetime_vector_for_coord->proc~tem_abort
proc~tem_spacetime_vector_for_coord->proc~tem_temporal_for
proc~tem_spacetime_vector_for_coord->interface~tem_spatial_for
proc~tem_spacetime_vector_for_coord->interface~tem_spacetime_lua_for
proc~tem_spacetime_vector_for_index->proc~tem_spacetime_vector_for_coord
proc~tem_spacetime_vector_for_index->proc~tem_temporal_for
proc~tem_spacetime_vector_for_index->tem_precice_read
proc~tem_spacetime_vector_for_index->interface~tem_spatial_for
proc~tem_spacetime_vector_for_index->interface~tem_spacetime_lua_for
proc~tem_spacetime_vector_for_treeids->proc~tem_abort
proc~tem_spacetime_vector_for_treeids->proc~tem_temporal_for
proc~tem_spacetime_vector_for_treeids->interface~tem_spatial_for
proc~tem_spacetime_vector_for_treeids->interface~tem_spacetime_lua_for
proc~tem_spacetime_for_treeids->proc~tem_abort
proc~tem_spacetime_for_treeids->proc~tem_temporal_for
proc~tem_spacetime_for_treeids->interface~tem_spatial_for
proc~tem_spacetime_for_treeids->interface~tem_spacetime_lua_for
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
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
integer,
private ::
iStFun
integer,
private ::
iElem
integer,
private ::
pos
integer,
private ::
oldPos
type(tem_st_fun_listElem_type ),
private, pointer ::
fPtr
real(kind=rk),
private, allocatable ::
st_res (:,:)
real(kind=rk),
private ::
st_res_elem (1,fun%nComponents)
integer(kind=long_k),
private ::
treeID (1)