@@ -169,6 +169,46 @@ module m_derived_types
169169#endif
170170 end type ic_context
171171
172+ !> Finite- difference state for post_process: density gradient magnitude for
173+ !> numerical Schlieren and centered FD coefficients in x- , y- , and z- directions.
174+ type fd_context
175+ real (wp), allocatable, dimension (:,:,:) :: gm_rho_sf !< Density gradient magnitude for numerical Schlieren
176+ real (wp), allocatable, dimension (:,:) :: fd_coeff_x !< FD coefficients in the x- direction
177+ real (wp), allocatable, dimension (:,:) :: fd_coeff_y !< FD coefficients in the y- direction
178+ real (wp), allocatable, dimension (:,:) :: fd_coeff_z !< FD coefficients in the z- direction
179+ end type fd_context
180+
181+ !> Output workspace for post_process: flow variable buffers, VisIt extents/ offsets,
182+ !> directory paths, Silo/ Binary file handles, and variable count.
183+ type output_context
184+ ! Flow variable storage; q_root_sf gathers to rank 0 in 1D parallel runs
185+ real (wp), allocatable, dimension (:,:,:) :: q_sf !< Working flow variable field (public)
186+ real (wp), allocatable, dimension (:,:,:) :: q_root_sf !< Gathered 1D flow variable field (rank 0 only)
187+ real (wp), allocatable, dimension (:,:,:) :: cyl_q_sf !< Cylindrical- geometry reordered field
188+ ! Single precision storage for flow variables
189+ real (sp), allocatable, dimension (:,:,:) :: q_sf_s !< Single- precision working field (public)
190+ real (sp), allocatable, dimension (:,:,:) :: q_root_sf_s !< Single- precision gathered 1D field
191+ real (sp), allocatable, dimension (:,:,:) :: cyl_q_sf_s !< Single- precision cylindrical reordered field
192+ ! Spatial and data extents for VisIt visualization (Silo only)
193+ real (wp), allocatable, dimension (:,:) :: spatial_extents !< Spatial extents per process
194+ real (wp), allocatable, dimension (:,:) :: data_extents !< Data extents per process
195+ ! Ghost zone layer sizes (lo/ hi) for subdomain connectivity in VisIt (Silo only)
196+ integer , allocatable, dimension (:) :: lo_offset !< Ghost zone lo sizes per active direction
197+ integer , allocatable, dimension (:) :: hi_offset !< Ghost zone hi sizes per active direction
198+ ! Cell- boundary count per active coordinate direction (Silo only)
199+ integer , allocatable, dimension (:) :: dims !< Cell- boundary counts per active direction
200+ ! Formatted database directory paths
201+ character (LEN= path_len + name_len) :: dbdir !< Base database directory
202+ character (LEN= path_len + 2 * name_len) :: proc_rank_dir !< Per- rank subdirectory
203+ character (LEN= path_len + 2 * name_len) :: rootdir !< Root subdirectory
204+ ! Formatted database file handles
205+ integer :: dbroot !< Master/ root file handle
206+ integer :: dbfile !< Slave/ local file handle
207+ integer :: optlist !< Silo options list handle (per- call scratch)
208+ ! Variable count for Binary format
209+ integer :: dbvars !< Total flow variables to write
210+ end type output_context
211+
172212 type bc_patch_parameters
173213 integer :: geometry
174214 integer :: type
0 commit comments