Skip to content

Commit

Permalink
Merge pull request #461 from ChrisArran/ChrisArran-photonEnergyExtrap…
Browse files Browse the repository at this point in the history
…olation

Bug fix: photon energy extrapolation
  • Loading branch information
Status-Mirror authored Mar 13, 2023
2 parents f371258 + ac93b12 commit 05fdd6f
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 9 deletions.
13 changes: 10 additions & 3 deletions epoch1d/src/physics_packages/photons.F90
Original file line number Diff line number Diff line change
Expand Up @@ -916,10 +916,17 @@ FUNCTION calculate_photon_energy(rand_seed, eta, generating_gamma)

REAL(num) :: calculate_photon_energy
REAL(num), INTENT(IN) :: rand_seed, eta, generating_gamma
REAL(num) :: chi_final
REAL(num) :: eta_min, chi_tmp, chi_final

chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
eta_min = 10.0_num**MINVAL(log_eta)
IF (eta < eta_min) THEN ! Extrapolate downwards with chi \propto eta^2
chi_tmp = find_value_from_table_alt(eta_min, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
chi_final = chi_tmp * (eta / eta_min)**2
ELSE
chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
ENDIF

calculate_photon_energy = (2.0_num * chi_final / eta) * generating_gamma &
* m0 * c**2
Expand Down
13 changes: 10 additions & 3 deletions epoch2d/src/physics_packages/photons.F90
Original file line number Diff line number Diff line change
Expand Up @@ -929,10 +929,17 @@ FUNCTION calculate_photon_energy(rand_seed, eta, generating_gamma)

REAL(num) :: calculate_photon_energy
REAL(num), INTENT(IN) :: rand_seed, eta, generating_gamma
REAL(num) :: chi_final
REAL(num) :: eta_min, chi_tmp, chi_final

chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
eta_min = 10.0_num**MINVAL(log_eta)
IF (eta < eta_min) THEN ! Extrapolate downwards with chi \propto eta^2
chi_tmp = find_value_from_table_alt(eta_min, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
chi_final = chi_tmp * (eta / eta_min)**2
ELSE
chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
ENDIF

calculate_photon_energy = (2.0_num * chi_final / eta) * generating_gamma &
* m0 * c**2
Expand Down
13 changes: 10 additions & 3 deletions epoch3d/src/physics_packages/photons.F90
Original file line number Diff line number Diff line change
Expand Up @@ -942,10 +942,17 @@ FUNCTION calculate_photon_energy(rand_seed, eta, generating_gamma)

REAL(num) :: calculate_photon_energy
REAL(num), INTENT(IN) :: rand_seed, eta, generating_gamma
REAL(num) :: chi_final
REAL(num) :: eta_min, chi_tmp, chi_final

chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
eta_min = 10.0_num**MINVAL(log_eta)
IF (eta < eta_min) THEN ! Extrapolate downwards with chi \propto eta^2
chi_tmp = find_value_from_table_alt(eta_min, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
chi_final = chi_tmp * (eta / eta_min)**2
ELSE
chi_final = find_value_from_table_alt(eta, rand_seed, &
n_sample_eta, n_sample_chi, log_eta, log_chi, p_photon_energy)
ENDIF

calculate_photon_energy = (2.0_num * chi_final / eta) * generating_gamma &
* m0 * c**2
Expand Down

0 comments on commit 05fdd6f

Please sign in to comment.