Main control routine: Update the time step for all levels. Main steps: * if iLevel < maxLevel do recursive at iLevel+1 * do BC at iLevel * do auxField calculation at iLevel * do compute kernel at iLevel * do apply source at iLevel * do do_IntpFinerAndExchange at iLevel if iLevel < maxLevel * intp My Coarser ghost (iLevel) from Finer (iLevel+1) * do exchange bufferFromFiner at iLevel * exchange buffer at iLevel * exchange bufferFromCoarser at iLevel if iLevel > minLevel * do do_intpCoarserAndExchange at iLevel if iLevel < maxLevel * intp Finer Ghost (iLevel+1) from my coarser (iLevel) * exchange bufferFromCoarser at iLevel+1
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mus_control_type) | :: | me | self control type |
|||
type(mus_scheme_type), | intent(inout) | :: | scheme | container for the scheme |
||
type(mus_geom_type), | intent(inout) | :: | geometry | geometry infomation |
||
type(mus_param_type), | intent(inout) | :: | params | global parameters |
||
integer, | intent(in) | :: | iLevel | the current level |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | now | ||||
integer, | private | :: | next | ||||
integer, | private | :: | iNestingLoop |