4 #include "sll_memory.h"
5 #include "sll_working_precision.h"
55 character(len=*),
intent(in) :: label
56 sll_real64,
intent(in) :: array(:, :, :, :)
57 sll_int32,
intent(in) :: projection
58 sll_int32,
intent(in) :: slice(2)
59 sll_int32,
intent(in) :: iplot
61 sll_real64,
pointer :: f_split(:, :)
63 sll_real64 :: eta1_min, eta2_min, eta3_min, eta4_min
64 sll_real64 :: eta1_max, eta2_max, eta3_max, eta4_max
65 sll_int32 :: n1, n2, n3, n4
68 n1 = mesh4d%num_cells1 + 1
69 n2 = mesh4d%num_cells2 + 1
70 n3 = mesh4d%num_cells3 + 1
71 n4 = mesh4d%num_cells4 + 1
73 eta1_min = mesh4d%eta1_min; eta1_max = mesh4d%eta1_max
74 eta2_min = mesh4d%eta2_min; eta2_max = mesh4d%eta2_max
75 eta3_min = mesh4d%eta3_min; eta3_max = mesh4d%eta3_max
76 eta4_min = mesh4d%eta4_min; eta4_max = mesh4d%eta4_max
78 select case (projection)
82 sll_allocate(f_split(n1, n2), error)
83 f_split = array(:, :, slice(1), slice(2))
85 eta2_min, eta2_max, n2, &
90 sll_allocate(f_split(n1, n3), error)
91 f_split = array(:, slice(1), :, slice(2))
93 eta3_min, eta3_max, n3, &
98 sll_allocate(f_split(n1, n4), error)
99 f_split = array(:, slice(1), slice(2), :)
101 eta4_min, eta4_max, n4, &
106 sll_allocate(f_split(n2, n3), error)
107 f_split = array(slice(1), :, :, slice(2))
109 eta3_min, eta3_max, n3, &
114 sll_allocate(f_split(n2, n4), error)
115 f_split = array(slice(1), :, slice(2), :)
117 eta4_min, eta4_max, n4, &
122 sll_allocate(f_split(n3, n4), error)
123 f_split = array(slice(1), slice(2), :, :)
125 eta4_min, eta4_max, n4, &
Write file for gnuplot to display 2d field.
integer(kind=i32), parameter, public sll_p_x1x3
subroutine, public sll_s_write_projection_2d(mesh4d, array, label, projection, slice, iplot)
Write a gnuplot file to display 2d projection of 4d array.
integer(kind=i32), parameter, public sll_p_x1x2
integer(kind=i32), parameter, public sll_p_x2x3
integer(kind=i32), parameter, public sll_p_x3x4
integer(kind=i32), parameter, public sll_p_x2x4
integer(kind=i32), parameter, public sll_p_x1x4
Cartesian mesh basic types.
Implements the functions to write data file plotable by GNUplot.