Ignore:
Timestamp:
Jul 22, 2024, 9:46:57 AM (4 months ago)
Author:
abarral
Message:

Revert cosp*/ from the trunk, as it's external code
Add missing bits from FCM2 source

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/libf/phylmd/cosp2/optics_lib.F90

    r5086 r5095  
    539539    if (alam < cutice) then
    540540       ! Region from 0.045 microns to 167.0 microns - no temperature depend
     541       do i=2,nwl
     542          if(alam < wl(i)) continue
     543       enddo
    541544       x1  = log(wl(i-1))
    542545       x2  = log(wl(i))
     
    555558       if(tk < temref(4)) tk=temref(4)
    556559       do i=2,4
    557           if(tk>=temref(i)) go to 12
     560          if(tk.ge.temref(i)) go to 12
    558561       enddo
    55956212     lt1 = i
    560563       lt2 = i-1
    561564       do i=2,nwlt
    562           if(alam<=wlt(i)) go to 14
     565          if(alam.le.wlt(i)) go to 14
    563566       enddo
    56456714     x1  = log(wlt(i-1))
     
    649652    Complex(wp) :: A1
    650653   
    651     If ((Dx>Imaxx) .Or. (InP>ImaxNP)) Then
     654    If ((Dx.Gt.Imaxx) .Or. (InP.Gt.ImaxNP)) Then
    652655       Error = 1
    653656       Return
     
    656659    Ir = 1 / Cm
    657660    Y =  Dx * Cm
    658     If (Dx<0.02) Then
     661    If (Dx.Lt.0.02) Then
    659662       NStop = 2
    660663    Else
    661        If (Dx<=8.0) Then
     664       If (Dx.Le.8.0) Then
    662665          NStop = Dx + 4.00*Dx**(1./3.) + 2.0
    663666       Else
    664           If (Dx< 4200.0) Then
     667          If (Dx.Lt. 4200.0) Then
    665668             NStop = Dx + 4.05*Dx**(1./3.) + 2.0
    666669          Else
     
    670673    End If
    671674    NmX = Max(Real(NStop),Real(Abs(Y))) + 15.
    672     If (Nmx > Itermax) then
     675    If (Nmx .gt. Itermax) then
    673676       Error = 1
    674677       Return
     
    723726!ds       Dqxt = Tnp1 *      Dble(A + B)          + Dqxt
    724727       Dqsc = Tnp1 * (A*Conjg(A) + B*Conjg(B)) + Dqsc
    725        If (N>1) then
     728       If (N.Gt.1) then
    726729          Dg = Dg + (dN*dN - 1) * (ANM1*Conjg(A) + BNM1 * Conjg(B)) / dN + TNM1 *(ANM1*Conjg(BNM1)) / (dN*dN - dN)
    727730!ds          Dg = Dg + (dN*dN - 1) * Dble(ANM1*Conjg(A) + BNM1 * Conjg(B)) / dN + TNM1 * Dble(ANM1*Conjg(BNM1)) / (dN*dN - dN)
     
    732735       AMB = A2 * (A - B)
    733736       Do I = 1,Inp2
    734           If (I>Inp) Then
     737          If (I.GT.Inp) Then
    735738             S(I) = -Pi1(I)
    736739          Else
     
    753756    End Do
    754757
    755     If (Dg >0) Dg = 2 * Dg / Dqsc
     758    If (Dg .GT.0) Dg = 2 * Dg / Dqsc
    756759    Dqsc =  2 * Dqsc / Dx**2
    757760    Dqxt =  2 * Dqxt / Dx**2
Note: See TracChangeset for help on using the changeset viewer.