Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

CESM1.2.1 and earlier- Temperature tendency output TTEND_TOT / PTTEND / DTCORE

olson

Member
   In the module, "physpkg.F90" modify 2 routines:

   subroutine tphysac:

        move the code block:

       ! store dse after tphysac in buffer
       do k = 1,pver
          dtcore(:ncol,k) = state%s(:ncol,k)
       end do

       to just below the line:

       state%t(:ncol,:pver) = tini(:ncol,:pver) + ztodt*tend%dtdt(:ncol,:pver)

       and change:

       dtcore(:ncol,k) = state%s(:ncol,k)

       to

       dtcore(:ncol,k) = state%t(:ncol,k)

   subroutine tphysbc:

       change the line:

       dtcore(:ncol,k) = (state%s(:ncol,k) - dtcore(:ncol,k))/(cpair*ztodt)

       to

       dtcore(:ncol,k) = (tini(:ncol,k) - dtcore(:ncol,k))/(ztodt) + tend%dTdt(:ncol,k)


     ... that should do it.
 

olson

Member
   In the module, "physpkg.F90" modify 2 routines:

   subroutine tphysac:

        move the code block:

       ! store dse after tphysac in buffer
       do k = 1,pver
          dtcore(:ncol,k) = state%s(:ncol,k)
       end do

       to just below the line:

       state%t(:ncol,:pver) = tini(:ncol,:pver) + ztodt*tend%dtdt(:ncol,:pver)

       and change:

       dtcore(:ncol,k) = state%s(:ncol,k)

       to

       dtcore(:ncol,k) = state%t(:ncol,k)

   subroutine tphysbc:

       change the line:

       dtcore(:ncol,k) = (state%s(:ncol,k) - dtcore(:ncol,k))/(cpair*ztodt)

       to

       dtcore(:ncol,k) = (tini(:ncol,k) - dtcore(:ncol,k))/(ztodt) + tend%dTdt(:ncol,k)


     ... that should do it.
 

olson

Member
   In the module, "physpkg.F90" modify 2 routines:

   subroutine tphysac:

        move the code block:

       ! store dse after tphysac in buffer
       do k = 1,pver
          dtcore(:ncol,k) = state%s(:ncol,k)
       end do

       to just below the line:

       state%t(:ncol,:pver) = tini(:ncol,:pver) + ztodt*tend%dtdt(:ncol,:pver)

       and change:

       dtcore(:ncol,k) = state%s(:ncol,k)

       to

       dtcore(:ncol,k) = state%t(:ncol,k)

   subroutine tphysbc:

       change the line:

       dtcore(:ncol,k) = (state%s(:ncol,k) - dtcore(:ncol,k))/(cpair*ztodt)

       to

       dtcore(:ncol,k) = (tini(:ncol,k) - dtcore(:ncol,k))/(ztodt) + tend%dTdt(:ncol,k)


     ... that should do it.
 

olson

Member
   In the module, "physpkg.F90" modify 2 routines:

   subroutine tphysac:

        move the code block:

       ! store dse after tphysac in buffer
       do k = 1,pver
          dtcore(:ncol,k) = state%s(:ncol,k)
       end do

       to just below the line:

       state%t(:ncol,:pver) = tini(:ncol,:pver) + ztodt*tend%dtdt(:ncol,:pver)

       and change:

       dtcore(:ncol,k) = state%s(:ncol,k)

       to

       dtcore(:ncol,k) = state%t(:ncol,k)

   subroutine tphysbc:

       change the line:

       dtcore(:ncol,k) = (state%s(:ncol,k) - dtcore(:ncol,k))/(cpair*ztodt)

       to

       dtcore(:ncol,k) = (tini(:ncol,k) - dtcore(:ncol,k))/(ztodt) + tend%dTdt(:ncol,k)


     ... that should do it.
 

olson

Member
   In the module, "physpkg.F90" modify 2 routines:

   subroutine tphysac:

        move the code block:

       ! store dse after tphysac in buffer
       do k = 1,pver
          dtcore(:ncol,k) = state%s(:ncol,k)
       end do

       to just below the line:

       state%t(:ncol,:pver) = tini(:ncol,:pver) + ztodt*tend%dtdt(:ncol,:pver)

       and change:

       dtcore(:ncol,k) = state%s(:ncol,k)

       to

       dtcore(:ncol,k) = state%t(:ncol,k)

   subroutine tphysbc:

       change the line:

       dtcore(:ncol,k) = (state%s(:ncol,k) - dtcore(:ncol,k))/(cpair*ztodt)

       to

       dtcore(:ncol,k) = (tini(:ncol,k) - dtcore(:ncol,k))/(ztodt) + tend%dTdt(:ncol,k)


     ... that should do it.
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear Jerry Olson
Thanks for this wonderful support. I just applied the changes and did a short test run. TTEND_TOT now almost exactly matches PTTEND + DTCORE (diff < 1e-11 K/s)
Have a nice week.Sebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Dear JerryI assume that this bug is already present in CESM 1.0.x (specifically CESM 1.0.2)? I'm asking this as we are currently extending an older CESM 1.0.2 run where we want to add DTCORE and PTTEND as additional output. At least the relevant code part (tphysac.F90 tphyspc.F90) in CESM 1.0.2 look similar to CESM 1.2.0 to me.Thanks for you helpSebastian
 
Top