atl_varSys_getStateForPoint Subroutine

public subroutine atl_varSys_getStateForPoint(fun, varSys, point, time, tree, nPnts, res)

Interface description for a variable access method (single point).

To obtain values of a given variable, it is necessary to state the space and time at which the variable should be evaluated. The interface is vectorized and provides n values at n different space locations at the same time. Of course the variable system itself also needs to be passed in, to allow the computation of other derived quantities as needed. The method description itself is passed in automatically, and has not to be provided explicitly.

Arguments

TypeIntentOptionalAttributesName
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.

real(kind=rk), intent(in) :: point(:,:)

Three-dimensional coordinates at which the variable should be evaluated. Only useful for variables provided as space-time functions.

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) :: nPnts

Number of values to obtain for this variable (vectorized access).

real(kind=rk), intent(out) :: res(:)

Resulting values for the requested variable.

Dimension: n requested entries x nComponents of this variable Access: (iElem-1)*fun%nComponents + iComp


Calls

proc~~atl_varsys_getstateforpoint~~CallsGraph proc~atl_varsys_getstateforpoint atl_varSys_getStateForPoint proc~ply_evallegendretenspoly ply_evalLegendreTensPoly proc~atl_varsys_getstateforpoint->proc~ply_evallegendretenspoly proc~atl_evallegendretenspoly1d atl_evalLegendreTensPoly1d proc~atl_varsys_getstateforpoint->proc~atl_evallegendretenspoly1d proc~tem_stoptimer tem_stopTimer proc~atl_varsys_getstateforpoint->proc~tem_stoptimer proc~tem_abort tem_abort proc~atl_varsys_getstateforpoint->proc~tem_abort proc~tem_coordofreal tem_CoordOfReal proc~atl_varsys_getstateforpoint->proc~tem_coordofreal proc~tem_posofid tem_PosOfId proc~atl_varsys_getstateforpoint->proc~tem_posofid proc~tem_levelof tem_LevelOf proc~atl_varsys_getstateforpoint->proc~tem_levelof proc~atl_evallegendretenspoly2d atl_evalLegendreTensPoly2d proc~atl_varsys_getstateforpoint->proc~atl_evallegendretenspoly2d proc~tem_starttimer tem_startTimer proc~atl_varsys_getstateforpoint->proc~tem_starttimer proc~tem_baryofid tem_BaryOfId proc~atl_varsys_getstateforpoint->proc~tem_baryofid proc~tem_idofcoord tem_IdOfCoord proc~atl_varsys_getstateforpoint->proc~tem_idofcoord proc~tem_elemsize tem_ElemSize proc~atl_varsys_getstateforpoint->proc~tem_elemsize

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iPoint
integer, private :: nComp
integer, private :: iDof
integer, private :: nDofs
integer, private :: level
integer, private :: iComp
integer, private :: maxPolyDegree
integer, private :: elemPos
integer, private :: coord(4)
integer, private :: levelPos
integer(kind=long_k), private :: treeID
integer, private :: basisType
integer, private :: iDir
real(kind=rk), private :: bary(3)
real(kind=rk), private :: extent
real(kind=rk), private :: halfwidth
real(kind=rk), private :: MappedCoord(1,3)
real(kind=rk), private, allocatable:: polyval(:,:)
real(kind=rk), private, allocatable:: val(:)
type(atl_varSys_data_type), private, pointer:: fPtr