18 procedure,
nopass:: cast2solver
23 procedure:: gas_pressure => void_fun
24 procedure:: compression_magnitude => void_sub
25 procedure:: vorticity_magnitude => void_sub
26 procedure:: gas_velocity_vector => void_fun3
27 generic:: gas_velocity => void_fun1, void_fun3
35 SUBROUTINE init (self)
38 call trace%begin (
'solver_t%init')
40 call self%patch_t%init
41 call self%extras_t%init
50 FUNCTION cast2solver (task)
RESULT(solver)
51 class(
task_t),
pointer:: task
59 call io%abort (
'patch_t%cast: failed to cast a task to patch_t')
61 END FUNCTION cast2solver
66 SUBROUTINE update (self)
72 SUBROUTINE void_sub (self, pg)
74 real,
dimension(:,:,:):: pg
76 pg = self%mem(:,:,:,1,1,1)
77 END SUBROUTINE void_sub
80 FUNCTION void_fun (self)
RESULT (pg)
82 real,
dimension(self%gn(1),self%gn(2),self%gn(3)):: pg
84 pg = self%mem(:,:,:,1,1,1)
88 FUNCTION void_fun1 (self, i)
RESULT (v)
91 real(4),
dimension(self%gn(1),self%gn(2),self%gn(3)):: v
93 v = self%mem(:,:,:,1,1,1)
94 END FUNCTION void_fun1
97 FUNCTION void_fun3 (self)
RESULT (v)
99 real(4),
dimension(self%gn(1),self%gn(2),self%gn(3),3):: v
101 v = self%mem(:,:,:,1,1:3,1)
102 END FUNCTION void_fun3
Template module for patches, which adds pointers to memory and mesh, and number of dimensions and var...
This module contains all experiment specific information necessary to solve the heat diffusion proble...
Template module for tasks.