IsAtCaustic Function

public function IsAtCaustic(qleq0)

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: qleq0

Return Value logical


Called by

proc~~isatcaustic~~CalledByGraph proc~isatcaustic IsAtCaustic proc~finalphase FinalPhase proc~finalphase->proc~isatcaustic proc~incphaseifcaustic IncPhaseIfCaustic proc~incphaseifcaustic->proc~isatcaustic proc~influencegeogaussiancart InfluenceGeoGaussianCart proc~influencegeogaussiancart->proc~finalphase proc~influencegeogaussiancart->proc~incphaseifcaustic proc~influencegeohatcart InfluenceGeoHatCart proc~influencegeohatcart->proc~finalphase proc~influencegeohatcart->proc~incphaseifcaustic proc~influencegeohatraycen InfluenceGeoHatRayCen proc~influencegeohatraycen->proc~finalphase proc~influencegeohatraycen->proc~incphaseifcaustic proc~influencesgb InfluenceSGB proc~influencesgb->proc~incphaseifcaustic proc~bellhopcore BellhopCore proc~bellhopcore->proc~influencegeogaussiancart proc~bellhopcore->proc~influencegeohatcart proc~bellhopcore->proc~influencegeohatraycen proc~bellhopcore->proc~influencesgb proc~bellhopcore~2 BellhopCore proc~bellhopcore~2->proc~influencegeogaussiancart proc~bellhopcore~2->proc~influencegeohatcart proc~bellhopcore~2->proc~influencegeohatraycen proc~bellhopcore~2->proc~influencesgb program~bellhop BELLHOP program~bellhop->proc~bellhopcore~2 program~bellhop3d BELLHOP3D program~bellhop3d->proc~bellhopcore

Source Code

  LOGICAL FUNCTION IsAtCaustic( qleq0 )

    ! LP: There are two versions of the phase shift condition used in the
    ! BELLHOP code, with the equalities in opposite positions. qleq0 false is
    ! only used in SGB.

    LOGICAL, INTENT( IN ) :: qleq0

    IF ( qleq0 ) THEN
       IsAtCaustic = q <= 0.0d0 .AND. qOld >  0.0d0 .OR. q >= 0.0d0 .AND. qOld <  0.0d0
    ELSE
       IsAtCaustic = q <  0.0d0 .AND. qOld >= 0.0d0 .OR. q >  0.0d0 .AND. qOld <= 0.0d0
    END IF

  END FUNCTION IsAtCaustic