|
| real function | mom_coms::reproducing_sum_2d (array, isr, ier, jsr, jer, EFP_sum, reproducing, overflow_check, err) |
| |
| real function | mom_coms::reproducing_sum_3d (array, isr, ier, jsr, jer, sums, EFP_sum, err) |
| |
| integer(kind=8) function, dimension(ni) | mom_coms::real_to_ints (r, prec_error, overflow) |
| |
| real function | mom_coms::ints_to_real (ints) |
| |
| subroutine | mom_coms::increment_ints (int_sum, int2, prec_error) |
| |
| subroutine | mom_coms::increment_ints_faster (int_sum, r, max_mag_term) |
| |
| subroutine | mom_coms::carry_overflow (int_sum, prec_error) |
| |
| subroutine | mom_coms::regularize_ints (int_sum) |
| |
| logical function, public | mom_coms::query_efp_overflow_error () |
| |
| subroutine, public | mom_coms::reset_efp_overflow_error () |
| |
| type(efp_type) function, public | mom_coms::efp_plus (EFP1, EFP2) |
| |
| type(efp_type) function, public | mom_coms::efp_minus (EFP1, EFP2) |
| |
| subroutine | mom_coms::efp_assign (EFP1, EFP2) |
| |
| real function, public | mom_coms::efp_to_real (EFP1) |
| |
| real function, public | mom_coms::efp_real_diff (EFP1, EFP2) |
| |
| type(efp_type) function, public | mom_coms::real_to_efp (val, overflow) |
| |
| subroutine, public | mom_coms::efp_list_sum_across_pes (EFPs, nval, errors) |
| |
| subroutine, public | mom_coms::mom_infra_end |
| |
|
| integer(kind=8), parameter | mom_coms::prec =2_8**46 |
| |
| real, parameter | mom_coms::r_prec =2.0**46 |
| |
| real, parameter | mom_coms::i_prec =1.0/(2.0**46) |
| |
| integer, parameter | mom_coms::max_count_prec =2**(63-46)-1 |
| |
| integer, parameter | mom_coms::ni =6 |
| |
| real, dimension(ni), parameter | mom_coms::pr = (/ r_prec**2, r_prec, 1.0, 1.0/r_prec, 1.0/r_prec**2, 1.0/r_prec**3 /) |
| |
| real, dimension(ni), parameter | mom_coms::i_pr = (/ 1.0/r_prec**2, 1.0/r_prec, 1.0, r_prec, r_prec**2, r_prec**3 /) |
| |
| logical | mom_coms::overflow_error = .false. |
| |
| logical | mom_coms::nan_error = .false. |
| |
| logical | mom_coms::debug = .false. |
| |