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

[NDSL] Feature/evap subl pdf #1008

Merged
merged 59 commits into from
Oct 11, 2024
Merged

Conversation

CharlesKrop
Copy link

GFDL_1M evap_subl_pdf loop port. Verified, fail at a few points due to known constant issue.

find_klcl port. Created to test QSat port. Verifies, but not integrated into the larger GFDL_1M port.

CharlesKrop and others added 30 commits August 2, 2024 14:28
…nor random errors on the order of 10^-8 which have yet to be investigated). evap and subl are believed to verify pending a fix to the cloud_effective_radius functions. Error in cloud_effective_radius functions appears to be a reappearance of the 32-bit precision errors previous noted when using these functions (errors are on the order of 10^-12). First attempt at hystpdf port, but still missing many pieces and does not execute.
QSatIce missing before test can be done
…sh this code back to dsl/qsat branch as well at some point to have a working qsat function to pull on for all needs, but for now it is in evap_subl_pdf for development so that I can test incorporating it into the evap loop
… suggests numerics are as close as I can get them while remaining true to Fortran
…. Fails to verify at majority of points using original metric, has not been tested with new metrics. Error patterns of the ES tables suggest arise during math within qsat_liquid and qsat_ice. Errors are small (10^-4). Further testing using find_klcl is in process to see if these errors propogate further or are locked within QSat.
…cil to calculate QSat for entire field, or function can be called from within the stencil to calculate QSat at individual points. To use function, the QSat class must be initialized before stencil call and the tables must be passed down to the function as an input.
…ells are believed to be due to errors in QSat.
…esign that (should) work for the full GFDL_1M module.

New stencil: hystpdf (in process)
New functions: pdffrac, pdfcondensate, bergeron_partition (in process)

Bergeron_partition calls GEOS_QsatLQU/ICE, which reaches into the non-table side of the QSAT world (not currently implemented, going to tackle that next).

All new additions will be tested as one once the entire hystpdf is ported.
…nctions are a port of QSATLQU0/QSATICE0 when UTBL is false.

Notable difference from QSat_Float: QSat_Float features a smooth transition from ice to liquid water (based on the TMIX parameter) while these two functions have a hard transition at 0C (should transition from calling one to the other).

UNTESTED FOR NOW, NO EASILY ACCESSABLE TEST CASE
Moved find_klcl into new misc_unused directory

Pre-commit run, fails in one spot b/c one comment is "too long"
@CharlesKrop CharlesKrop requested review from a team as code owners September 26, 2024 18:32
@FlorianDeconinck FlorianDeconinck changed the title Feature/evap subl pdf [NDSL] Feature/evap subl pdf Sep 26, 2024
@FlorianDeconinck FlorianDeconinck added the 0 diff The changes in this pull request have verified to be zero-diff with the target branch. label Sep 26, 2024
Copy link
Collaborator

@FlorianDeconinck FlorianDeconinck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good push!

Let's reshape things

CharlesKrop and others added 2 commits September 27, 2024 12:55
…ist/pyMoist/GFDL_1M/GFDL_1M.py

Co-authored-by: Florian Deconinck <deconinck.florian@gmail.com>
Copy link

@twicki twicki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there are a few open points to discuss still

… implementation of new k-level feature. Will rename after k-level feature is implemented, want to remain true to fortran until development is finished for easier tracking.
…oved b/c it is unfinished and unused. will be recreated later on when it is needed
Copy link
Collaborator

@FlorianDeconinck FlorianDeconinck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two small edits and we can merge

@FlorianDeconinck FlorianDeconinck merged commit 254a69c into dsl/develop Oct 11, 2024
3 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 diff The changes in this pull request have verified to be zero-diff with the target branch.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants