This module gathers different temporal effect treatments. like: constant, lua function and predefined Fortran function. \n Currently supports:
Boundaries can be defined with superposed conditions in space and time. Therefore the function defined here acts as a factor applied to the overall boundary value.
defines different temporal types like const, lua func or predefined func
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=LabelLen), | private | :: | kind | temporal kind |
|||
real(kind=rk), | private | :: | const | constant value |
|||
integer, | private | :: | lua_fun_ref | = | 0 | Reference to the Lua function if the temporal function is defined as a Lua function. |
|
type(flu_state), | private | :: | conf | Handle to the Lua script for the Lua function |
|||
type(tem_linear_type), | private | :: | linear | contains information for predefined functions |
|||
type(tem_from_file_temporal_type), | private | :: | from_file | contains information for reading the data from file |
|||
real(kind=rk), | private | :: | freq | frequency of oscillation Load in routine: load_temporal_cos |
|||
real(kind=rk), | private | :: | phi | initial phase |
|||
real(kind=rk), | private | :: | offset | offset |
contains information for predefined temporal functions
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=rk), | private | :: | from_time | start time |
|||
real(kind=rk), | private | :: | to_time | end time |
|||
real(kind=rk), | private | :: | min_factor | minimum factor at start time |
|||
real(kind=rk), | private | :: | max_factor | maximum factor at end time |
contains information for loading inlet velocities from a datafile The data has to be stored as tuples (time,velocity) columnwise. t1 v1 t2 v2 ... tn vn and v1 .eq. vn has to be fullfilled. The data has to be provided in the format '(e15.8)'
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=PathLen), | private | :: | datafile | filename of the data |
|||
character(len=LabelLen), | private | :: | intp | interpolate linearly between the data |
|||
type(grw_real2darray_type), | private | :: | signal | growing array of tuples (time, velocity) |
|||
logical, | private | :: | ramp | = | .false. | ramping active? |
|
real(kind=rk), | private | :: | rampVal | ramping value at the end of rampT |
|||
real(kind=rk), | private | :: | rampT | ramping time |
|||
real(kind=rk), | private | :: | fac | factor to multiply data with |
|||
logical, | private | :: | periodic | is the data periodic? |
This function invokes the type of the boundary such as constant, lua or predefined Fortran function.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_temporal_type) | :: | temporal | boundary state |
|||
type(tem_time_type), | intent(in) | :: | time | timer object incl. the current time information |
return value of a function
This function returns value of linear function which is defined by from_time, to_time, min_factor and max_factor
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_linear_type), | intent(in) | :: | me | temporal linear type |
||
real(kind=rk), | intent(in) | :: | t | current time |
return value of a function
This function returns value of smooth sin function which is defined by from_time, to_time, min_factor and max_factor
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_linear_type), | intent(in) | :: | me | temporal smooth type |
||
real(kind=rk), | intent(in) | :: | t | current time |
return value of a function
This function evaluate lua function and return its result
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | fun_ref | Lua reference to the function to evaluate. |
||
type(tem_time_type), | intent(in) | :: | time | timer object incl. the current time information |
||
type(flu_State) | :: | conf | optional lua state |
return value
This function searches for the right values in the periodic data read from file and interpolates them if needed.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_from_file_temporal_type) | :: | me | datatype incl. the data read from file |
|||
type(tem_time_type), | intent(in) | :: | time | timer object incl. the current time information |
return value
This subroutine load temporal table defined for a boundary.\n
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_temporal_type), | intent(out) | :: | me | boundary temporal type |
||
type(flu_State) | :: | conf | lua state |
|||
integer, | intent(in) | :: | parent | parent handle contains temporal table |
||
character(len=*), | intent(in), | optional | :: | key | state variable key string defined in lua |
This subroutine load standard temporal function variables from LUA file.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_linear_type), | intent(inout) | :: | me | temporal predefined fun type |
||
type(flu_State) | :: | conf | lua state type |
|||
integer, | intent(in) | :: | thandle | aotus parent handle |
This subroutine loads the information needed to read data from a file.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_from_file_temporal_type), | intent(inout) | :: | me | temporal predefined from_file type |
||
type(flu_State) | :: | conf | lua state type |
|||
integer, | intent(in) | :: | thandle | aotus parent handle |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(inout) | :: | freq | temporal predefined fun type |
||
real(kind=rk), | intent(inout) | :: | phi | temporal predefined fun type |
||
real(kind=rk), | intent(inout) | :: | offset | temporal predefined fun type |
||
type(flu_State) | :: | conf | lua state type |
|||
integer, | intent(in) | :: | thandle | aotus parent handle |
This subroutine reads the data from disc and stores it in the tem_from_file_temporal_type.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_from_file_temporal_type), | intent(inout) | :: | me | temporal predefined from_file type |