Changeset 176


Ignore:
Timestamp:
01/30/18 11:28:30 (6 years ago)
Author:
aquiquet
Message:

Schoof/Tsai?: buttressing explicitly computed w/o shelves: 3 calls to diagno L2.

Location:
trunk/SOURCES
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/SOURCES/New-remplimat/diagno-L2_mod.f90

    r143 r176  
    1616real, dimension(nx,ny) :: uyb1ramollo 
    1717real, dimension(nx,ny) :: pvi_keep 
    18  
    1918 
    2019!cdc transfere dans module3d pour compatibilite avec furst_schoof_mod 
     
    8685end if 
    8786 
    88  
    8987return 
    9088end subroutine init_diagno 
     
    142140   
    143141  !if (Schoof.eq.1.and.nt.GT.15000) then ! flux grounding line Schoof 
    144   if (Schoof.eq.1) then ! flux grounding line Schoof 
    145      call interpol_glflux ! calcul flux GL + interpolation sur voisins 
    146   endif 
     142! afq -- below:  if (Schoof.eq.1) then ! flux grounding line Schoof 
     143! afq -- below:     call interpol_glflux ! calcul flux GL + interpolation sur voisins 
     144! afq -- below:  endif 
    147145 
    148146!~       do j=1,ny 
     
    190188    pvi_keep(:,:)=pvi(:,:)        
    191189    where (flot(:,:).and.H(:,:).GT.2.) 
    192        pvi(:,:)=1.e5     
    193 !       pvi(:,:)=pvimin 
     190!       pvi(:,:)=1.e5     
     191       pvi(:,:)=pvimin 
    194192    endwhere 
    195193 
     
    210208       back_force_y(:,:)=1. 
    211209    endwhere 
     210    back_force_x(:,:) = min ( back_force_x(:,:), 1. ) 
     211    back_force_y(:,:) = min ( back_force_y(:,:), 1. ) 
     212    debug_3D(:,:,64) = back_force_x(:,:) 
     213    debug_3D(:,:,65) = back_force_y(:,:) 
    212214 
    213215    if (ifail_diagno_ramollo.gt.0) then 
     
    228230 
    229231!~   print*,'apres calcul rempli_L2' 
    230 !~   read(*,*)       
     232!~   read(*,*) 
     233     
     234    call interpol_glflux ! calcul flux GL + interpolation sur voisins 
     235     
     236    call rempli_L2(nxd1,nxd2,nyd1,nyd2,uxbar(nxd1:nxd2,nyd1:nyd2),uybar(nxd1:nxd2,nyd1:nyd2), &  
     237       uxb1(nxd1:nxd2,nyd1:nyd2),uyb1(nxd1:nxd2,nyd1:nyd2),  & 
     238       imx_diag(nxd1:nxd2,nyd1:nyd2),imy_diag(nxd1:nxd2,nyd1:nyd2),ifail_diagno) 
     239   
    231240  endif 
    232241   
     
    416425         endif 
    417426         pvi(i,j)=pvi(i,j)+visc(i,j,k) 
    418          Abar(i,j) =(Bt2/2.)**(-1./3.) + Abar(i,j)  
    419  
     427         Abar(i,j) =(Bt2/2.)**(-1./3.) + Abar(i,j) 
     428          
    420429         Taushelf(i,j)=Taushelf(i,j)+ttau 
    421430 
     
    427436      pvi(i,j)  = pvi(i,j)*H(i,j)/nz 
    428437      Abar(i,j) = (Abar(i,j) /nz)**(-3.) 
    429       
     438       
    430439 
    431440      Taushelf(i,j)=Taushelf(i,j)/nz 
  • trunk/SOURCES/furst_schoof_mod.f90

    r175 r176  
    5757  real :: toutpetit = 1e-6 
    5858  real :: denom, prodscal 
     59 
     60  real :: bfx, bfy 
    5961 
    6062  !debug 
     
    103105              Hglx_tab(i,j)=Hgl 
    104106               
     107              ! afq: the back force is on the staggered grid, the GL can be either West or East to this point. 
     108              if (xpos .lt. -dx/2.) then 
     109                 bfx = back_force_x(i,j) 
     110              else 
     111                 bfx = back_force_x(i+1,j) 
     112              endif 
    105113              if (gr_select.eq.1) then ! flux de Tsai 
    106                  call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),back_force_x(i-1,j),phi_prescr) 
     114                 call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),bfx,phi_prescr) 
    107115              else if (gr_select.eq.2) then ! flux de Schoof 
    108116                 ! afq: the dragging coef. is on the staggered grid, the GL can be either West or East to this point. 
     
    112120                    frot_coef = betamx(i+1,j) 
    113121                 endif 
    114                  call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,back_force_x(i-1,j),phi_prescr) 
     122                 call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,bfx,phi_prescr) 
    115123              else 
    116124                 print*,'ATTENTION FLUX AUTRE QUE TSAI OU SCHOOF NON IMPLEMENTE' 
     
    191199              Hglx_tab(i,j)=Hgl 
    192200               
     201              ! afq: the back force is on the staggered grid, the GL can be either West or East to this point. 
     202              if (xpos .lt. dx/2.) then 
     203                 bfx = back_force_x(i,j) 
     204              else 
     205                 bfx = back_force_x(i+1,j) 
     206              endif 
    193207              if (gr_select.eq.1) then ! flux de Tsai 
    194                  call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),back_force_x(i+1,j),phi_prescr) 
     208                 call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),bfx,phi_prescr) 
    195209              else if (gr_select.eq.2) then ! flux de Schoof 
    196210                 ! afq: the dragging coef. is on the staggered grid, the GL can be either West or East to this point. 
     
    200214                    frot_coef = betamx(i+1,j) 
    201215                 endif 
    202                  call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,back_force_x(i+1,j),phi_prescr) 
     216                 call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,bfx,phi_prescr) 
    203217              else 
    204218                 print*,'ATTENTION FLUX AUTRE QUE TSAI OU SCHOOF NON IMPLEMENTE' 
     
    276290              Hgly_tab(i,j)=Hgl 
    277291               
     292              ! afq: the back force is on the staggered grid, the GL can be either South or North to this point. 
     293              if (ypos .lt. -dy/2.) then 
     294                 bfy = back_force_y(i,j) 
     295              else 
     296                 bfy = back_force_y(i,j+1) 
     297              endif 
    278298              if (gr_select.eq.1) then ! flux de Tsai 
    279                  call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),back_force_y(i,j-1),phi_prescr) 
     299                 call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),bfy,phi_prescr) 
    280300              else if (gr_select.eq.2) then ! flux de Schoof 
    281301                 ! afq: the dragging coef. is on the staggered grid, the GL can be either South or North to this point. 
     
    285305                    frot_coef = betamy(i,j+1) 
    286306                 endif 
    287                  call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,back_force_y(i,j-1),phi_prescr) 
     307                 call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,bfy,phi_prescr) 
    288308              else 
    289309                 print*,'ATTENTION FLUX AUTRE QUE TSAI OU SCHOOF NON IMPLEMENTE' 
     
    358378              Hgly_tab(i,j)=Hgl 
    359379               
     380              ! afq: the back force is on the staggered grid, the GL can be either South or North to this point. 
     381              if (ypos .lt. dy/2.) then 
     382                 bfy = back_force_y(i,j) 
     383              else 
     384                 bfy = back_force_y(i,j+1) 
     385              endif 
    360386              if (gr_select.eq.1) then ! flux de Tsai 
    361                  call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),back_force_y(i,j+1),phi_prescr) 
     387                 call flux_Tsai4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),bfy,phi_prescr) 
    362388              else if (gr_select.eq.2) then ! flux de Schoof 
    363389                 ! afq: the dragging coef. is on the staggered grid, the GL can be either South or North to this point. 
     
    367393                    frot_coef = betamy(i,j+1) 
    368394                 endif 
    369                  call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,back_force_y(i,j+1),phi_prescr) 
     395                 call flux_Schoof4Schoof (Hgl,Abar(i,j),frot_coef,alpha_flot,glen(1),m_weert,bfy,phi_prescr) 
    370396              else 
    371397                 print*,'ATTENTION FLUX AUTRE QUE TSAI OU SCHOOF NON IMPLEMENTE' 
     
    474500!!$     enddo 
    475501!!$  enddo 
     502 
     503  debug_3D(:,:,66) = phi_prescr_tabx(:,:) 
     504  debug_3D(:,:,67) = phi_prescr_taby(:,:) 
     505   
    476506end subroutine interpol_glflux 
    477507   
Note: See TracChangeset for help on using the changeset viewer.