[94] | 1 | SUBROUTINE PYPSVFCJ(YCALC,DTT,TTHETA,SIG,GAM,SPH,SMH, |
---|
| 2 | 1 PRFUNC,DPRDT,DPRDY,SIGPART,GAMPART,SPHPART,SMHPART) |
---|
| 3 | C DTT in degrees |
---|
| 4 | C TTHETA in degrees |
---|
| 5 | C SPH is S/L + H/L |
---|
| 6 | C SML is S/L - H/L (frequently zero) |
---|
| 7 | Cf2py intent(in) YCALC |
---|
| 8 | Cf2py intent(in) DTT |
---|
| 9 | Cf2py intent(in) TTHETA |
---|
| 10 | Cf2py intent(in) SIG |
---|
| 11 | Cf2py intent(in) GAM |
---|
| 12 | Cf2py intent(in) SPH |
---|
| 13 | Cf2py intent(in) SMH |
---|
| 14 | Cf2py intent(out) PRFUNC |
---|
| 15 | Cf2py intent(out) DPRDT |
---|
| 16 | Cf2py intent(out) DPRDY |
---|
| 17 | Cf2py intent(out) SIGPART |
---|
| 18 | Cf2py intent(out) GAMPART |
---|
| 19 | Cf2py intent(out) SPHPART |
---|
| 20 | Cf2py intent(out) SMHPART |
---|
| 21 | SL = (SPH+SMH)/2.0 |
---|
| 22 | HL = (SPH-SMH)/2.0 |
---|
| 23 | FW = (2.355*SQRT(SIG)+GAM)/100.0 |
---|
| 24 | FMIN = 10.0*(-FW-SPH*COSD(TTHETA)) |
---|
| 25 | FMAX = 15.0*FW |
---|
| 26 | IF ( DTT .GE. FMIN .AND. DTT .LE. FMAX ) THEN |
---|
| 27 | CALL PSVFCJ(DTT*100.,TTHETA*100.,SL,HL,SIG,GAM, |
---|
| 28 | 1 PRFUNC,DPRDT,SLPART,HLPART,SIGPART,GAMPART) |
---|
| 29 | DPRDT = DPRDT*YCALC*100.0 |
---|
| 30 | DPRDY = PRFUNC |
---|
| 31 | SIGPART = SIGPART*YCALC |
---|
| 32 | GAMPART = GAMPART*YCALC |
---|
| 33 | SPHPART = 0.5*(SLPART+HLPART)*YCALC |
---|
| 34 | SMHPART = 0.5*(SLPART-HLPART)*YCALC |
---|
| 35 | ELSE |
---|
| 36 | PRFUNC = 0.0 |
---|
| 37 | DPRDT = 0.0 |
---|
| 38 | DPRDY = 0.0 |
---|
| 39 | SIGPART = 0.0 |
---|
| 40 | GAMPART = 0.0 |
---|
| 41 | SPHPART = 0.0 |
---|
| 42 | SMHPART = 0.0 |
---|
| 43 | END IF |
---|
| 44 | RETURN |
---|
| 45 | END |
---|
| 46 | |
---|
| 47 | SUBROUTINE BUILDMV(WDELT,W,M,DP,A,V) |
---|
| 48 | Cf2py intent(in) WDELT |
---|
| 49 | Cf2py intent(in) W |
---|
| 50 | Cf2py intent(in) M |
---|
| 51 | Cf2py intent(in) DP |
---|
| 52 | Cf2py depend(M) DP |
---|
| 53 | Cf2py intent(in,out) A |
---|
| 54 | Cf2py depend(M) a |
---|
| 55 | Cf2py intent(in,out) V |
---|
| 56 | Cf2py depend(M) V |
---|
| 57 | REAL*4 DP(M),A(M,M),V(M) |
---|
| 58 | DO I=1,M |
---|
| 59 | V(I) = V(I)+WDELT*DP(I) |
---|
| 60 | DO J=1,M |
---|
| 61 | A(I,J) = A(I,J)+W*DP(I)*DP(J) |
---|
| 62 | END DO |
---|
| 63 | END DO |
---|
| 64 | RETURN |
---|
| 65 | END |
---|
| 66 | |
---|