469 }
else if (lat == -
PIoTwo) {
479 }
else if (declin == -
PIoTwo) {
488 real cos_h = - std::tan(del) * std::tan(phi);
491 }
else if (cos_h >=
one) {
494 h = std::acos(cos_h);
502 }
else if (t1 < -
PI) {
511 real aa = std::sin(lat) * std::sin(declin);
512 real bb = std::cos(lat) * std::cos(declin);
517 real tt1,tt2,tt3,tt4;
518 if ( (t2 >=
PI) && (t1 <=
PI) && ((
PI - h) <= dt) ) {
520 tt1 = std::min(std::max(t1, -h), h);
521 tt4 = std::min(std::max(t2,
two*
PI - h),
two*
PI + h);
523 }
else if ( (t2 >= -
PI) && (t1 <= -
PI) && ((
PI - h) <= dt) ) {
525 tt1 = std::min(std::max(t1, -
two*
PI - h), -
two*
PI + h);
526 tt4 = std::min(std::max(t2, -h), h);
530 tt2 = std::min(std::max(t2 -
two*
PI, -h), h);
531 }
else if (t2 < -
PI) {
532 tt2 = std::min(std::max(t2 +
two*
PI, -h), h);
534 tt2 = std::min(std::max(t2 , -h), h);
538 tt1 = std::min(std::max(t1 -
two*
PI, -h), h);
539 }
else if (t1 < -
PI) {
540 tt1 = std::min(std::max(t1 +
two*
PI, -h), h);
542 tt1 = std::min(std::max(t1 , -h), h);
550 if ( (tt2 > tt1) || (tt4 > tt3) ) {
551 return (aa * (tt2 - tt1) + bb * (sin(tt2) - sin(tt1))) / dt +
552 (aa * (tt4 - tt3) + bb * (sin(tt4) - sin(tt3))) / dt;
constexpr amrex::Real two
Definition: ERF_Constants.H:8
constexpr amrex::Real one
Definition: ERF_Constants.H:7
constexpr amrex::Real zero
Definition: ERF_Constants.H:6
constexpr amrex::Real PI
Definition: ERF_Constants.H:16
constexpr amrex::Real PIoTwo
Definition: ERF_Constants.H:17
double real
Definition: ERF_OrbCosZenith.H:9
amrex::Real Real
Definition: ERF_ShocInterface.H:19