487 }
else if (lat == -
PIoTwo) {
497 }
else if (declin == -
PIoTwo) {
506 real cos_h = - std::tan(del) * std::tan(phi);
509 }
else if (cos_h >=
one) {
512 h = std::acos(cos_h);
520 }
else if (t1 < -
PI) {
529 real aa = std::sin(lat) * std::sin(declin);
530 real bb = std::cos(lat) * std::cos(declin);
535 real tt1,tt2,tt3,tt4;
536 if ( (t2 >=
PI) && (t1 <=
PI) && ((
PI - h) <= dt) ) {
538 tt1 = std::min(std::max(t1, -h), h);
539 tt4 = std::min(std::max(t2,
two*
PI - h),
two*
PI + h);
541 }
else if ( (t2 >= -
PI) && (t1 <= -
PI) && ((
PI - h) <= dt) ) {
543 tt1 = std::min(std::max(t1, -
two*
PI - h), -
two*
PI + h);
544 tt4 = std::min(std::max(t2, -h), h);
548 tt2 = std::min(std::max(t2 -
two*
PI, -h), h);
549 }
else if (t2 < -
PI) {
550 tt2 = std::min(std::max(t2 +
two*
PI, -h), h);
552 tt2 = std::min(std::max(t2 , -h), h);
556 tt1 = std::min(std::max(t1 -
two*
PI, -h), h);
557 }
else if (t1 < -
PI) {
558 tt1 = std::min(std::max(t1 +
two*
PI, -h), h);
560 tt1 = std::min(std::max(t1 , -h), h);
568 if ( (tt2 > tt1) || (tt4 > tt3) ) {
569 return (aa * (tt2 - tt1) + bb * (sin(tt2) - sin(tt1))) / dt +
570 (aa * (tt4 - tt3) + bb * (sin(tt4) - sin(tt3))) / dt;
constexpr amrex::Real two
Definition: ERF_Constants.H:10
constexpr amrex::Real one
Definition: ERF_Constants.H:9
constexpr amrex::Real zero
Definition: ERF_Constants.H:8
constexpr amrex::Real PI
Definition: ERF_Constants.H:42
constexpr amrex::Real PIoTwo
Definition: ERF_Constants.H:43
double real
Definition: ERF_OrbCosZenith.H:9
amrex::Real Real
Definition: ERF_ShocInterface.H:19