-
Notifications
You must be signed in to change notification settings - Fork 0
owens changes #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: og/copy-owen/baseline
Are you sure you want to change the base?
owens changes #14
Conversation
Update phi_from_eos to use deep EOS for vertical remap. Possibly busted
…OMME without topography is numerically well-behaved.
| end if | ||
| lat = elem%spherep(i,j)%lat | ||
| lon = elem%spherep(i,j)%lon | ||
| elem%fcor(i,j)= 2*omega* & |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where is cosine part?
| do i=1,np | ||
| if ( rotate_grid /= 0) then | ||
| if ( rotate_grid /= 0 ) then | ||
| if (atm_is_deep) then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use this abort in OG branch
| real(kind=real_kind) :: outval | ||
|
|
||
| select case (funcname) | ||
| case ("r_hat_from_phi_scalar") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
string comparison
|
|
||
| integer :: i, j, kk | ||
|
|
||
| do kk=1,size(inval, 3) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
performance?
| call gfr_g2f_scalar_and_limit(gfr, ie, elem(ie)%metdet, elem(ie)%state%phis, phispg) | ||
| do k = 1,nf2 | ||
| ! Integrate (phis_gll - phis_fv)^2 over FV subcell (i,j). Do this | ||
| ! using gfr_g2f_scalar; thus, only one entry out of nf^2 is used. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i assume we do not really need this
| #endif | ||
| do q = 1 , qsize | ||
| do k = 1 , nlev ! dp_star used as temporary instead of divdp (AAM) | ||
| ! div( U dp Q), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these changes should be avoided because of consistency dp_u variable
| ! by calling it here, it mimics eam forcings computations in standalone | ||
| ! homme. | ||
| call compute_test_forcing(elem,hybrid,hvcoord,tl%n0,n0_qdp,dt_remap,nets,nete,tl) | ||
| #endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
forcing can be enabled back with certain changes
|
|
||
| inttau2 = constC * z * exp(- scaledZ**2) | ||
|
|
||
| ! radius ratio |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what does 'deep' option do here? iirc i ran both branches with it and did not see anything.
| dp3d_i(:,:,nlevp) = dp3d(:,:,nlev) | ||
| do k=2,nlev | ||
| dp3d_i(:,:,k)=(dp3d(:,:,k)+dp3d(:,:,k-1))/2 | ||
| end do |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do not see special DA averaging for phi terms, is it in this code?
| enddo | ||
| endif | ||
| #endif | ||
| ! compute pressure on interfaces |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
iirc we cannot recover DA phi from eos explicitly
| if (deltaerr<deltatol) exit | ||
| end do ! end do for the do while loop | ||
|
|
||
| ! update phi: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor note -- imex is already quite expensive and using extra functions in it will slow it down
| phi_vadv_i=0 | ||
| theta_vadv=0 | ||
| v_vadv=0 | ||
| else |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use this
| enddo | ||
| elem(ie)%derived%eta_dot_dpdn(:,:,nlev+1) = & | ||
| elem(ie)%derived%eta_dot_dpdn(:,:,nlev+1) + eta_ave_w*eta_dot_dpdn(:,:,nlev+1) | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's do it in init only
| enddo | ||
| endif | ||
| #endif | ||
| !#ifdef ENERGY_DIAGNOSTICS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can just config without this ifdef
| use hybvcoord_mod, only: hvcoord_t | ||
| use control_mod, only: rsplit | ||
| use hybrid_mod, only: hybrid_t | ||
| use physical_constants, only : Cp,g |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's use hydrostatic phi in this file for references
as compared to the commit he branched off