@@ -129,11 +129,15 @@ extern "C" void calc_zn_rad(int n, double rho, double zn_rad[]);
129129// ! \param mu The cosine of angle in lab or CM
130130// ! \param phi The azimuthal angle; will randomly chosen angle if a nullptr
131131// ! is passed
132+ // ! \param prn_seeds A pointer to the array of pseudorandom seeds
133+ // ! \param stream The pseudorandom stream index with which to sample from
132134// ==============================================================================
133135
134- extern " C" void rotate_angle_c (double uvw[3 ], double mu, const double * phi);
136+ extern " C" void rotate_angle_c (double uvw[3 ], double mu, const double * phi,
137+ uint64_t * prn_seeds, int stream);
135138
136- Direction rotate_angle (Direction u, double mu, const double * phi);
139+ Direction rotate_angle (Direction u, double mu, const double * phi,
140+ uint64_t * prn_streams, int stream);
137141
138142// ==============================================================================
139143// ! Samples an energy from the Maxwell fission distribution based on a direct
@@ -144,10 +148,12 @@ Direction rotate_angle(Direction u, double mu, const double* phi);
144148// ! rule C64 in the Monte Carlo Sampler LA-9721-MS.
145149// !
146150// ! \param T The tabulated function of the incoming energy
151+ // ! \param prn_seeds A pointer to the array of pseudorandom seeds
152+ // ! \param stream The pseudorandom stream index with which to sample from
147153// ! \return The sampled outgoing energy
148154// ==============================================================================
149155
150- extern " C" double maxwell_spectrum (double T);
156+ extern " C" double maxwell_spectrum (double T, uint64_t * prn_seeds, int stream );
151157
152158// ==============================================================================
153159// ! Samples an energy from a Watt energy-dependent fission distribution.
@@ -159,10 +165,12 @@ extern "C" double maxwell_spectrum(double T);
159165// !
160166// ! \param a Watt parameter a
161167// ! \param b Watt parameter b
168+ // ! \param prn_seeds A pointer to the array of pseudorandom seeds
169+ // ! \param stream The pseudorandom stream index with which to sample from
162170// ! \return The sampled outgoing energy
163171// ==============================================================================
164172
165- extern " C" double watt_spectrum (double a, double b);
173+ extern " C" double watt_spectrum (double a, double b, uint64_t * prn_seeds, int stream );
166174
167175// ==============================================================================
168176// ! Samples an energy from the Gaussian energy-dependent fission distribution.
@@ -175,10 +183,13 @@ extern "C" double watt_spectrum(double a, double b);
175183// !
176184// ! @param mean mean of the Gaussian distribution
177185// ! @param std_dev standard deviation of the Gaussian distribution
186+ // ! @param prn_seeds A pointer to the array of pseudorandom seeds
187+ // ! @param stream The pseudorandom stream index with which to sample from
178188// ! @result The sampled outgoing energy
179189// ==============================================================================
180190
181- extern " C" double normal_variate (double mean, double std_dev);
191+ extern " C" double normal_variate (double mean, double std_dev, uint64_t * prn_seeds,
192+ int stream);
182193
183194// ==============================================================================
184195// ! Samples an energy from the Muir (Gaussian) energy-dependent distribution.
@@ -190,10 +201,13 @@ extern "C" double normal_variate(double mean, double std_dev);
190201// ! @param e0 peak neutron energy [eV]
191202// ! @param m_rat ratio of the fusion reactants to AMU
192203// ! @param kt the ion temperature of the reactants [eV]
204+ // ! @param prn_seeds A pointer to the array of pseudorandom seeds
205+ // ! @param stream The pseudorandom stream index with which to sample from
193206// ! @result The sampled outgoing energy
194207// ==============================================================================
195208
196- extern " C" double muir_spectrum (double e0 , double m_rat, double kt);
209+ extern " C" double muir_spectrum (double e0 , double m_rat, double kt, uint64_t * prn_seeds,
210+ int stream);
197211
198212// ==============================================================================
199213// ! Doppler broadens the windowed multipole curvefit.
0 commit comments