Prepares the monitors used by GRANS.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(grans_obj), | intent(inout) | :: | this |
GRANS solver |
subroutine grans_obj_PrepareSolverMonitor(this) !> Prepares the monitors used by GRANS. implicit none class(grans_obj), intent(inout) :: this !! GRANS solver ! Initialize monitors call this%monitors%Initialize(this%parallel) ! Timing monitor call this%timer%AddTiming('Advance') call this%timer%AddTiming('Output' ) call this%timer%AddTiming('Restart') call this%timer%AddTiming('Monitor') ! Timing monitor call this%monitors%Create('timing',7,stdout=.false. ) call this%monitors%Set ('timing',1,label='Iteration' ) call this%monitors%Set ('timing',2,label='Time' ) call this%monitors%Set ('timing',3,label='Total (s)' ) call this%monitors%Set ('timing',4,label='Advance (s)' ) call this%monitors%Set ('timing',5,label='Output (s)' ) call this%monitors%Set ('timing',6,label='Restart (s)' ) call this%monitors%Set ('timing',7,label='Monitor (s)' ) ! Main monitor: writes to stdout call this%monitors%Create('stdout',7,stdout=.true. ) call this%monitors%Set ('stdout',1,label='Iteration' ) call this%monitors%Set ('stdout',2,label='Time' ) call this%monitors%Set ('stdout',3,label='# particles' ) call this%monitors%Set ('stdout',4,label='max CFL' ) call this%monitors%Set ('stdout',5,label='max|Vx|' ) call this%monitors%Set ('stdout',6,label='max|Vy|' ) call this%monitors%Set ('stdout',7,label='max|Vz|' ) ! Initialize additional monitors call this%monitors%Create('hypre', 4,stdout=.false. ) call this%monitors%Set ('hypre', 1,label='Iteration' ) call this%monitors%Set ('hypre', 2,label='Time' ) call this%monitors%Set ('hypre', 3,label='Sub-iterions') call this%monitors%Set ('hypre', 4,label='Rel. error' ) call this%monitors%Create('stats', 8,stdout=.false. ) call this%monitors%Set ('stats', 1,label='Iteration' ) call this%monitors%Set ('stats', 2,label='Time' ) call this%monitors%Set ('stats', 3,label='xp_1' ) call this%monitors%Set ('stats', 4,label='xp_2' ) call this%monitors%Set ('stats', 5,label='xp_3' ) call this%monitors%Set ('stats', 6,label='vp_1' ) call this%monitors%Set ('stats', 7,label='vp_2' ) call this%monitors%Set ('stats', 8,label='vp_3' ) if (this%use_RP) call this%RP%CreateMonitor() if (this%use_PP) call this%PP%CreateMonitor() ! Write headers call this%monitors%Print(print_labels=.true.) return end subroutine grans_obj_PrepareSolverMonitor