9 #ifndef WARPX_DIAGNOSTICS_REDUCEDDIAGS_FIELDPROBE_H_
10 #define WARPX_DIAGNOSTICS_REDUCEDDIAGS_FIELDPROBE_H_
18 #include <unordered_map>
22 using namespace amrex::literals;
51 void InitData ()
override final;
55 void LoadBalance ()
override final;
62 void ComputeDiags (
int step)
override final;
72 amrex::Real x_probe = 0._rt;
73 amrex::Real y_probe = 0._rt;
74 amrex::Real x1_probe = 0._rt;
75 amrex::Real y1_probe = 0._rt;
76 amrex::Real target_normal_x = 0._rt;
77 amrex::Real target_normal_y = 1._rt;
78 amrex::Real target_normal_z = 0._rt;
79 amrex::Real target_up_x = 0._rt;
80 amrex::Real target_up_y = 0._rt;
81 amrex::Real target_up_z = 1._rt;
86 long m_valid_particles {0};
89 int m_last_compute_step = 0;
107 bool m_field_probe_integrate =
false;
110 int interp_order = 1;
113 bool raw_fields =
false;
116 bool do_moving_window_FP =
false;
121 virtual void WriteToFile (
int step)
const override;
125 bool ProbeInDomain ()
const;
130 void normalize(amrex::Real &AMREX_RESTRICT x, amrex::Real &AMREX_RESTRICT
y,
131 amrex::Real &AMREX_RESTRICT
z){
132 amrex::Real mag = std::sqrt(x*x +
y*
y +
z*
z);
DetectorGeometry
Definition: FieldProbe.H:28
Definition: FieldProbe.H:39
amrex::Vector< amrex::Real > m_data_out
Empty array to be used by IOProcessor node to store and output data.
Definition: FieldProbe.H:101
FieldProbeParticleContainer m_probe
this is the particle container in which probe particles are stored
Definition: FieldProbe.H:104
void normalize(amrex::Real &AMREX_RESTRICT x, amrex::Real &AMREX_RESTRICT y, amrex::Real &AMREX_RESTRICT z)
Definition: FieldProbe.H:130
amrex::Real z1_probe
Definition: FieldProbe.H:82
amrex::Vector< amrex::Real > m_data
Empty vector for to which data is pushed.
Definition: FieldProbe.H:98
amrex::Real detector_radius
Definition: FieldProbe.H:83
Definition: FieldProbeParticleContainer.H:41
Definition: ReducedDiags.H:24
def y
Definition: Excitation_Flag_Generator.py:76
def z
Definition: Excitation_Flag_Generator.py:77
@ nattribs
Definition: FieldProbeParticleContainer.H:30