Module for the calling of user defined routines from various places in the pfasst algorithm
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public, | parameter | :: | PF_PRE_PREDICTOR | = | 1 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_PREDICTOR | = | 2 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_ITERATION | = | 3 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_ITERATION | = | 4 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_SWEEP | = | 5 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_SWEEP | = | 6 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_STEP | = | 7 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_STEP | = | 8 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_INTERP_ALL | = | 9 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_INTERP_ALL | = | 10 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_INTERP_Q0 | = | 11 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_INTERP_Q0 | = | 12 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_RESTRICT_ALL | = | 13 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_RESTRICT_ALL | = | 14 | Define hook indices |
integer, | public, | parameter | :: | PF_PRE_CONVERGENCE | = | 15 | Define hook indices |
integer, | public, | parameter | :: | PF_POST_CONVERGENCE | = | 16 | Define hook indices |
integer, | public, | parameter | :: | PF_MAX_HOOK | = | 16 | Define hook indices |
integer, | public, | parameter | :: | PF_HOOK_LOG_ONE | = | 1 | |
integer, | public, | parameter | :: | PF_HOOK_LOG_ALL | = | 7 | |
integer, | public, | parameter | :: | PF_HOOK_LOG_LAST | = | PF_MAX_HOOK | |
character(len=20), | public, | parameter | :: | hook_names(PF_HOOK_LOG_LAST) | = | (/'pre-predictor ', 'post-predictor ', 'pre-iteration ', 'post-iteration ', 'pre-sweep ', 'post-sweep ', 'pre-step ', 'post-step ', 'pre-interp-all ', 'post-interp-all ', 'pre-interp-q0 ', 'post-interp-q0 ', 'pre-restrict-all ', 'post-restrict-all ', 'pre-convergence ', 'post-convergence '/) | Define hook names |
Subroutine to add a procedure to the hook on the given level
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(pf_pfasst_t), | intent(inout) | :: | pf | main pfasst structure |
||
integer, | intent(in) | :: | level_ind | which pfasst level to add hook |
||
integer, | intent(in) | :: | hook | which hook to add |
||
procedure(pf_hook_p) | :: | proc | precudre to call from hook |
Subroutine to call hooks associated with the hook and level
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(pf_pfasst_t), | intent(inout), | target | :: | pf | main pfasst structure |
|
integer, | intent(in) | :: | level_ind | which pfasst level to call hook |
||
integer, | intent(in) | :: | hook | which hook to call |
Subroutine defining log hook
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(pf_pfasst_t), | intent(inout) | :: | pf | |||
class(pf_level_t), | intent(inout) | :: | level | |||
type(pf_state_t), | intent(in) | :: | state |
Subroutine to add log hook
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(pf_pfasst_t), | intent(inout) | :: | pf |