Skip to content
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

Add Discret Variance Decay (DVD) diagnostic of Knut and Sergey #578

Open
wants to merge 60 commits into
base: main
Choose a base branch
from

Conversation

patrickscholz
Copy link
Contributor

@patrickscholz patrickscholz commented Mar 16, 2024

  • Introduce new diagnostic flag in namelsit.io: ldiag_DVD

  • Add DVD diagnostic of Knut Klingbeil et al. 2014, Quantification of spurious dissipation and mixing – Discrete Variance Decay in a Finite-Volume framework. For Knuts diagnostic we are not able to split up the DVD in its singular component. There we are only able to quantify a total DVD, considering all effects that manipulates the tracer.

  • Add DVD diagnostic of Sergey Danilov after T. Banerjee et al. 2023, Discrete variance decay analysis of spurious mixing. In this diagnostic we are able to split up the DVD contributions in all of its components.

  • This commit already considers the changes made in Pull Request: Refactoring bugfix: fix three small bugs in the tracer part Refactoring bugfix: fix three small bugs in the tracer part #575. Since these changes had to be taken into account in the computation of DVD. So it would make sense to merge this to refactoring after Refactoring bugfix: fix three small bugs in the tracer part #575 has been merged. --> that also means that in moment the testcase will fail!

  • It also includes the path updates from ollie-->albedo for namelist.config and namelist.forcing

grafik

…dvection fluxes, and to store the old tracer value. prepare the header of the general compute_dvd routine
… end of the ocean timestep overwritten with timestep n+1
…al REDI diffusivity. Before we used the new hnode to compute the gradient but it has to be done on the old hnode
…ebugging since Knuts diagnostic can obnly be used as a total
…e reasonable than before, however KK diagnostic still looks strange
…that vert. expl. Redi diffusivity can be antidissipativ
…bugfix_hnode_in_Trz_and_difveR_which_tr_in_Trxy
delete unnecessary variable
…es_diag.F90, src/oce_ale_tracer.F90, config/namelist.cvmix
…cer gradients. Its was decided to use tr^n, which means that the tr_AB can be kicked out from the DVD computation
…e first ones isnt need anymore due to the AB2/3 order update, the later one isnt need anymore due to the fixed bug from tracer synchronisation of the tracer gradient computation
…esold(1, :, :), therefor allocate new array for trstar= (trold + tr)*0.5_WP
@patrickscholz patrickscholz marked this pull request as ready for review March 16, 2024 15:53
@JanStreffing
Copy link
Collaborator

Variable: a_ice, current_value: 0.26924984548439423, master_value: 0.2692498167543513
FAIL!!!: a_ice DIFFERENCE: 2.873004295578241e-08.

Variable: salt, current_value: 23.944089812825084, master_value: 23.94408981205545
FAIL!!!: salt DIFFERENCE: 7.696350223795889e-10.

Variable: sst, current_value: 8.52679144278934, master_value: 8.526792796340805
FAIL!!!: sst DIFFERENCE: -1.3535514646889624e-06.

Variable: temp, current_value: 1.701819029858262, master_value: 1.7018189804276316
FAIL!!!: temp DIFFERENCE: 4.943063047768703e-08.

Variable: u, current_value: -0.0014310721311603398, master_value: -0.0014310701355284
FAIL!!!: u DIFFERENCE: -1.995631939864448e-09.

Variable: v, current_value: 0.00014314162989162503, master_value: 0.0001431423767448
FAIL!!!: v DIFFERENCE: -7.468531749803536e-10.

@JanStreffing JanStreffing changed the base branch from refactoring to main June 21, 2024 08:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants