Changeset 648 for codes/icosagcm/trunk/src
- Timestamp:
- 12/21/17 22:38:57 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/trunk/src/dissip/dissip_gcm.f90
r548 r648 35 35 !$OMP THREADPRIVATE(rayleigh_friction_type) 36 36 !$OMP THREADPRIVATE(rayleigh_shear) 37 REAL, SAVE :: rayleigh_tau 37 REAL, SAVE :: rayleigh_tau, rayleigh_limlat 38 38 !$OMP THREADPRIVATE(rayleigh_tau) 39 !$OMP THREADPRIVATE(rayleigh_limlat) 39 40 40 41 REAL,SAVE :: dtdissip … … 103 104 rayleigh_friction_type=2 104 105 IF (is_master) PRINT *, 'Rayleigh friction : Schaer-like mountain with shear DCMIP2.2' 106 CASE('giant_liu_schneider') 107 rayleigh_friction_type=99 108 IF (is_master) PRINT *, 'Rayleigh friction : giant planets Liu Schneider 2010' 105 109 CASE DEFAULT 106 110 IF (is_master) PRINT *, 'Bad selector : rayleigh_friction_type =', TRIM(rayleigh_friction_key), & … … 117 121 STOP 118 122 END IF 123 IF(rayleigh_friction_type == 99) THEN 124 rayleigh_limlat=0. 125 CALL getin("rayleigh_limlat",rayleigh_limlat) 126 rayleigh_limlat = rayleigh_limlat*3.14159/180. 127 ENDIF 119 128 END IF 120 129 … … 479 488 480 489 INTEGER :: ind, shear 481 INTEGER :: l,ij 490 INTEGER :: l,ij,nn 482 491 483 492 !$OMP BARRIER … … 515 524 516 525 IF(rayleigh_friction_type>0) THEN 526 IF(rayleigh_friction_type<99) THEN 517 527 phi=f_geopot(ind) 518 528 ue=f_ue(ind) … … 524 534 ENDDO 525 535 END DO 536 ELSE 537 ue=f_ue(ind) 538 DO ij=ij_begin,ij_end 539 nn = ij+u_right 540 IF (ABS(lat_e(nn)) .gt. rayleigh_limlat) THEN 541 !print*, "latitude", lat_e(nn)*180./3.14159 542 due(nn,ll_begin:ll_begin+1) = due(nn,ll_begin:ll_begin+1) - (ue(nn,ll_begin:ll_begin+1)/rayleigh_tau) 543 ENDIF 544 nn = ij+u_lup 545 IF (ABS(lat_e(nn)) .gt. rayleigh_limlat) THEN 546 due(nn,ll_begin:ll_begin+1) = due(nn,ll_begin:ll_begin+1) - (ue(nn,ll_begin:ll_begin+1)/rayleigh_tau) 547 ENDIF 548 nn = ij+u_ldown 549 IF (ABS(lat_e(nn)) .gt. rayleigh_limlat) THEN 550 due(nn,ll_begin:ll_begin+1) = due(nn,ll_begin:ll_begin+1) - (ue(nn,ll_begin:ll_begin+1)/rayleigh_tau) 551 ENDIF 552 ENDDO 553 ENDIF 526 554 END IF 527 555 END DO … … 532 560 533 561 CONTAINS 562 534 563 SUBROUTINE relax(shift_t, shift_u) 535 564 USE dcmip_initial_conditions_test_1_2_3
Note: See TracChangeset
for help on using the changeset viewer.