Changeset 5158 for LMDZ6/branches/Amaury_dev/libf/dyn3d/friction.F90
- Timestamp:
- Aug 2, 2024, 2:12:03 PM (3 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/dyn3d/friction.F90
r5136 r5158 58 58 IF (friction_type==0) THEN 59 59 ! calcul des composantes au carre du vent naturel 60 doj = 1, jjp161 doi = 1, iip160 DO j = 1, jjp1 61 DO i = 1, iip1 62 62 u2(i, j) = ucov(i, j, 1) * ucov(i, j, 1) * unscu2(i, j) 63 63 enddo 64 64 enddo 65 doj = 1, jjm66 doi = 1, iip165 DO j = 1, jjm 66 DO i = 1, iip1 67 67 v2(i, j) = vcov(i, j, 1) * vcov(i, j, 1) * unscv2(i, j) 68 68 enddo … … 70 70 71 71 ! calcul du module de V en dehors des poles 72 doj = 2, jjm73 doi = 2, iip172 DO j = 2, jjm 73 DO i = 2, iip1 74 74 modv(i, j) = sqrt(0.5 * (u2(i - 1, j) + u2(i, j) + v2(i, j - 1) + v2(i, j))) 75 75 enddo … … 83 83 upols = 0. 84 84 vpols = 0. 85 doi = 2, iip185 DO i = 2, iip1 86 86 zco = cos(rlonv(i)) * (rlonu(i) - rlonu(i - 1)) 87 87 zsi = sin(rlonv(i)) * (rlonu(i) - rlonu(i - 1)) … … 95 95 vpn = sqrt(upoln * upoln + vpoln * vpoln) / pi 96 96 vps = sqrt(upols * upols + vpols * vpols) / pi 97 doi = 1, iip197 DO i = 1, iip1 98 98 ! modv(i,1)=vpn 99 99 ! modv(i,jjp1)=vps … … 103 103 104 104 ! calcul du frottement au sol. 105 doj = 2, jjm106 doi = 1, iim105 DO j = 2, jjm 106 DO i = 1, iim 107 107 ucov(i, j, 1) = ucov(i, j, 1) & 108 108 - cfric * pdt * 0.5 * (modv(i + 1, j) + modv(i, j)) * ucov(i, j, 1) … … 110 110 ucov(iip1, j, 1) = ucov(1, j, 1) 111 111 enddo 112 doj = 1, jjm113 doi = 1, iip1112 DO j = 1, jjm 113 DO i = 1, iip1 114 114 vcov(i, j, 1) = vcov(i, j, 1) & 115 115 - cfric * pdt * 0.5 * (modv(i, j + 1) + modv(i, j)) * vcov(i, j, 1) … … 120 120 121 121 IF (friction_type==1) THEN 122 dol = 1, llm122 DO l = 1, llm 123 123 ucov(:, :, l) = ucov(:, :, l) * (1. - pdt * kfrict(l)) 124 124 vcov(:, :, l) = vcov(:, :, l) * (1. - pdt * kfrict(l))
Note: See TracChangeset
for help on using the changeset viewer.