Changeset 362 for codes/icosagcm/trunk/src/geometry.f90
- Timestamp:
- 09/25/15 14:36:36 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/trunk/src/geometry.f90
r356 r362 22 22 TYPE(t_field),POINTER :: de(:) 23 23 TYPE(t_field),POINTER :: le(:) 24 TYPE(t_field),POINTER :: le_de(:) ! le/de, 0. if de=0. 24 25 TYPE(t_field),POINTER :: Riv(:) 25 26 TYPE(t_field),POINTER :: Riv2(:) … … 69 70 REAL(rstd),POINTER :: le(:) ! lenght of a edge 70 71 !$OMP THREADPRIVATE(le) 72 REAL(rstd),POINTER :: le_de(:) ! le/de 73 !$OMP THREADPRIVATE(le_de) 71 74 REAL(rstd),POINTER :: Riv(:,:) ! weight 72 75 !$OMP THREADPRIVATE(Riv) … … 116 119 CALL allocate_field(geom%de,field_u,type_real) 117 120 CALL allocate_field(geom%le,field_u,type_real) 121 CALL allocate_field(geom%le_de,field_u,type_real) 118 122 CALL allocate_field(geom%bi,field_t,type_real) 119 123 CALL allocate_field(geom%Av,field_z,type_real) … … 150 154 de=geom%de(ind) 151 155 le=geom%le(ind) 156 le_de=geom%le_de(ind) 152 157 Av=geom%Av(ind) 153 158 Riv=geom%Riv(ind) … … 438 443 CALL dist_cart(xyz_v(n+z_up,:), xyz_v(n+z_lup,:),le(n+u_lup)) 439 444 CALL dist_cart(xyz_v(n+z_ldown,:), xyz_v(n+z_down,:),le(n+u_ldown)) 440 445 446 le_de(n+u_right)=le(n+u_right)/de(n+u_right) ! NaN possible but should be harmless 447 le_de(n+u_lup) =le(n+u_lup) /de(n+u_lup) 448 le_de(n+u_ldown)=le(n+u_ldown)/de(n+u_ldown) 449 441 450 Ai(n)=0 442 451 DO k=0,5 … … 528 537 CALL surf_triangle(xyz_i(n,:), xyz_v(n+z_pos(k+1),:), xyz_i(n+t_pos(k+1),:),S1) 529 538 CALL surf_triangle(xyz_i(n,:), xyz_v(n+z_pos(k+1),:), xyz_i(n+t_pos(MOD(k+1+6,6)+1),:),S2) 539 ! Riv(n,k+1)=0.5*(S1+S2)*(radius**2) ! Definition modified for DEC 530 540 Riv(n,k+1)=0.5*(S1+S2)/Ai(n) 531 541 Riv2(n,k+1)=0.5*(S1+S2)/surf_v(k+1)
Note: See TracChangeset
for help on using the changeset viewer.