This subroutine call get_params of input_variable
the interface has to comply to the abstract interface tem_varsys_module#tem_varsys_proc_setParams.
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. |
||
character(len=*), | intent(in) | :: | instring |
Input string with parameter to set in method_data |
||
character(len=*), | intent(out) | :: | outstring |
Output string with requested parameter value from method_data |
recursive subroutine tem_opVar_getParams( fun, varSys, instring, outstring )
! ---------------------------------------------------------------------- !
!> 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.
class(tem_varSys_op_type), intent(in) :: fun
!> The variable system to obtain the variable from.
type(tem_varSys_type), intent(in) :: varSys
!> Input string with parameter to set in method_data
character(len=*), intent(in) :: instring
!> Output string with requested parameter value from method_data
character(len=*), intent(out) :: outstring
! ---------------------------------------------------------------------- !
integer :: iDep, posDepVar
! ---------------------------------------------------------------------- !
do iDep = 1, fun%nInputs
! get position of dependent var in varSys
posDepVar = fun%input_varPos(iDep)
! get params from dependent variable
call varSys%method%val(posDepVar)%get_params( varSys = varSys, &
& inString = inString, &
& outString = outString )
! if outString is filled by any dependent variable then exit loop
if (len(trim(outString)) > 0) then
outString = trim(outString)//'_oper'
exit
end if
end do
end subroutine tem_opVar_getParams