My Project
Functions/Subroutines
mod_bulk Module Reference

Functions/Subroutines

subroutine asimple_drag (spdx, spdy, strx, stry)
 
subroutine psimple_drag (spdx, spdy, strx, stry)
 

Function/Subroutine Documentation

◆ asimple_drag()

subroutine mod_bulk::asimple_drag ( real(sp), dimension(:), intent(in), allocatable, target  spdx,
real(sp), dimension(:), intent(in), allocatable, target  spdy,
real(sp), dimension(:), intent(inout), allocatable, target  strx,
real(sp), dimension(:), intent(inout), allocatable, target  stry 
)

Definition at line 49 of file mod_bulk.f90.

49  IMPLICIT NONE
50  REAL(SP),ALLOCATABLE, TARGET, INTENT(IN) :: SPDX(:),SPDY(:)
51  REAL(SP),ALLOCATABLE, TARGET, INTENT(INOUT) :: STRX(:),STRY(:)
52 
53  REAL(SP), POINTER :: SPDXP(:),SPDYP(:)
54  REAL(SP), POINTER :: STRXP(:),STRYP(:)
55 
56  spdxp => spdx
57  spdyp => spdy
58 
59  strxp => strx
60  stryp => stry
61 
62  CALL psimple_drag(spdxp,spdyp,strxp,stryp)
63 
64 
subroutine psimple_drag(spdx, spdy, strx, stry)
Definition: mod_bulk.f90:70
Here is the call graph for this function:
Here is the caller graph for this function:

◆ psimple_drag()

subroutine mod_bulk::psimple_drag ( real(sp), dimension(:), intent(in), pointer  spdx,
real(sp), dimension(:), intent(in), pointer  spdy,
real(sp), dimension(:), intent(inout), pointer  strx,
real(sp), dimension(:), intent(inout), pointer  stry 
)

Definition at line 70 of file mod_bulk.f90.

70  IMPLICIT NONE
71  REAL(SP), POINTER,INTENT(IN) :: SPDX(:),SPDY(:)
72  REAL(SP), POINTER, INTENT(INOUT) :: STRX(:),STRY(:)
73  INTEGER :: I, N
74  REAL(SP) :: CD, WDS, TX, TY
75 
76 
77  IF(.not.Associated(spdx)) WRITE(6,*) "SIMPLE DRAG: SPDX is not associated"
78  IF(.not.Associated(spdy)) WRITE(6,*) "SIMPLE DRAG: SPDY is not associated"
79  IF(.not.Associated(strx)) WRITE(6,*) "SIMPLE DRAG: STRX is not associated"
80  IF(.not.Associated(stry)) WRITE(6,*) "SIMPLE DRAG: STRY is not associated"
81 
82  n = ubound(spdx,1)
83 
84 
85  IF(n /= ubound(spdy,1)) WRITE(6,*) "SIMPLE DRAG: MIS-MATCHED DIMENSIONS"
86  IF(n /= ubound(stry,1)) WRITE(6,*) "SIMPLE DRAG: MIS-MATCHED DIMENSIONS"
87  IF(n /= ubound(strx,1)) WRITE(6,*) "SIMPLE DRAG: MIS-MATCHED DIMENSIONS"
88 
89  DO i=1,n
90  tx = spdx(i)
91  ty = spdy(i)
92  wds=sqrt(tx*tx+ty*ty)
93  cd=1.2e-3
94  IF (wds >= 11.0_sp) cd=(0.49_sp+0.065_sp*wds)*1.e-3_sp
95  IF (wds >= 25.0_sp) cd=(0.49_sp+0.065_sp*25.0_sp)*1.e-3_sp
96 
97  strx(i) = 1.2_sp*cd*tx*wds
98  stry(i) = 1.2_sp*cd*ty*wds
99 
100  END DO
101 
102 
integer n
Definition: mod_main.f90:55
Here is the caller graph for this function: