My Project
Public Member Functions | List of all members
mod_spherical::arcc Interface Reference

Public Member Functions

subroutine arcc_flt (XX1, YY1, XX2, YY2, XXC, YYC)
 
subroutine arcc_dbl (XX1, YY1, XX2, YY2, XXC, YYC)
 

Detailed Description

Definition at line 63 of file mod_spherical.f90.

Member Function/Subroutine Documentation

◆ arcc_dbl()

subroutine mod_spherical::arcc::arcc_dbl ( real(dp), intent(in)  XX1,
real(dp), intent(in)  YY1,
real(dp), intent(in)  XX2,
real(dp), intent(in)  YY2,
real(dp), intent(out)  XXC,
real(dp), intent(out)  YYC 
)

Definition at line 191 of file mod_spherical.f90.

191  IMPLICIT NONE
192  REAL(DP), INTENT(OUT) :: XXC,YYC
193  REAL(DP), INTENT(IN) :: XX1,YY1,XX2,YY2
194  REAL(DP) :: X1,Y1,X2,Y2
195 
196  x1=xx1*deg2rad
197  y1=yy1*deg2rad
198 
199  x2=xx2*deg2rad
200  y2=yy2*deg2rad
201 
202  xxc=dcos(y1)*dsin(x1)+dcos(y2)*dsin(x2)
203  ! XXC=XXC/(COS(Y1)*COS(X1)+COS(Y2)*COS(X2))
204  ! XXC=ATAN(XXC)
205  xxc=datan2(xxc,(dcos(y1)*dcos(x1)+dcos(y2)*dcos(x2)))
206  xxc=xxc/deg2rad
207 
208  ! IF(XXC .LT. 0.0) XXC=180.0+XXC
209  IF(xxc < 0.0_dp) xxc=360.0_dp+xxc
210 
211  yyc=dcos(y1)*dcos(y1)+dcos(y2)*dcos(y2)+2.0_dp*dcos(y1)*dcos(y2)*dcos(x1-x2)
212  ! YYC=SQRT(YYC)/(SIN(Y1)+SIN(Y2))
213  yyc=datan2(dsqrt(yyc),(dsin(y1)+dsin(y2)))
214  ! YYC=ATAN(YYC)
215  yyc=90.0_dp-yyc/deg2rad
216 
217  RETURN
real(dp), parameter deg2rad
Definition: mod_main.f90:885

◆ arcc_flt()

subroutine mod_spherical::arcc::arcc_flt ( real(spa)  XX1,
real(spa)  YY1,
real(spa)  XX2,
real(spa)  YY2,
real(spa)  XXC,
real(spa)  YYC 
)

Definition at line 221 of file mod_spherical.f90.

221  IMPLICIT NONE
222  REAL(SPA) :: XX1,YY1,XX2,YY2
223  REAL(SPA) :: XXC,YYC
224  REAL(DP) :: XXC_DP,YYC_DP
225 
226  CALL arcc_dbl(dble(xx1),dble(yy1),dble(xx2),dble(yy2),xxc_dp,yyc_dp)
227  xxc = xxc_dp
228  yyc = yyc_dp
229 
subroutine arcc_dbl(XX1, YY1, XX2, YY2, XXC, YYC)

The documentation for this interface was generated from the following file: