-
Notifications
You must be signed in to change notification settings - Fork 11
Add single precision option to the dycore (intermediate state) #970
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
Open
starkphi
wants to merge
152
commits into
main
Choose a base branch
from
add_single_precision_dycore_part1
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
152 commits
Select commit
Hold shift + click to select a range
5ecfe67
add single to wp/vp definition
starkphi f7c326b
vp/wp not needed to define dtype correspondance
starkphi a75f6e6
cast to vp/wp, import directly (no ta.wpfloat), use WP_EPS instead of…
starkphi 050bbb5
add single_precision_marker to pytests
starkphi 98476ac
also use the convenient IconSavepoint.dtime()
starkphi ea4a0a3
Merge branch 'main' into add_single_precision_dycore_part1
starkphi adcf8fb
test_apply_diffusion_to_vn made single precision ready
starkphi d031445
small formatting change by ruff
starkphi 5daea04
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 8bdaa4b
Merge branch 'main' into add_single_precision_dycore_part1
muellch 7604fd5
Apply suggestions from code review
starkphi 20b7f8e
fix type error in compiled _calculate_divdamp_fields
starkphi af5777e
directly use WP_EPS/VP_EPS from constants and capitalize constant var…
starkphi b65791a
remove obsolete lines
starkphi b1fccb3
reduce to one 'global' statement
starkphi 53b2c44
keep --enable_output a boolean flag
starkphi ab3bce6
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 173badc
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 37f59c6
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 8a1cada
Merge branch 'main' from 15.04.2026 (incl. #1185) into add_single_pre…
starkphi 04ee97b
Merge branch 'main-temp_260508' into add_single_precision_dycore_part1
starkphi 43ad1d2
Remove logic error
starkphi 7eb7d3f
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 0311e85
typos and small merge errors
starkphi 9409567
more casting to wpfloat
starkphi 279ef41
concise way to cast elements of config classes to wpfloat
starkphi 9f674d7
keep RBF calculations in double-precision
starkphi 944a39e
add casts for advection in single
starkphi 102a2dc
make field factories strictly double-precision
starkphi 5adf4c2
explicitly use gtx.float64, no casting of float literals needed
starkphi 671aef0
use export_field from factories to granules
starkphi 1730672
first field_op that's needed in both precisions (cell_2_edge_interpol…
starkphi 9949f06
more from wpfloat to gtx.float64
starkphi b288285
Setup jabw fields in double, cast for init
starkphi 55d35bf
use gtx.sqrt directly
starkphi 5aed3aa
Merge branch 'main' into add_single_precision_dycore_part1
starkphi ae9c225
fix typo, fix type verification in factories, update handling of empt…
starkphi 974d039
add more missing casts
starkphi b803bca
change tolerances
starkphi 1fd9f38
make more tests single-precision-ready
starkphi 3d4bc1d
more general name: dataclass_scalars_to_wp
starkphi a830eca
scale tolerance factor in default rtol with eps
starkphi 574b19a
add wpfloat casts to advection
starkphi 5a72b9a
mark test_advection single_precision_ready
starkphi e00e698
fix standalone driver datatests for single
starkphi 1c0a480
make muphys test single precision ready
starkphi 8abcd29
update missing fct name change
starkphi 5cdae18
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi e6011a9
revert to atol=0.0 as default
starkphi d49256b
use direct call to wpfloat and make SaturationAdjustmentConfig more r…
starkphi 5235eda
use math from gtx
starkphi be0d204
[tmp] cast math functions on scalars to wpfloat (with gtx.astype)
starkphi 057741b
small casting fix
starkphi 6b31915
pre-commit changes (ruff)
starkphi 6d3c982
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 5f8bf39
make sure type is a float
starkphi 5a16537
have to use np.astype directly here (no gtx.field)
starkphi 32ee9e6
fix merge error
starkphi 0e4eaa7
more wpfloat casts
starkphi 4d3f8c0
more casts and single precision specific tolerance
starkphi c905782
Make Newton steps in double precision
starkphi b991f73
[ok?] add break condition for faster runs in single
starkphi e06a765
casts and tolerances for some single precision integration tests in d…
starkphi 375605f
more casts
starkphi 5eb9343
prepare standalone driver test for single (still needs tol adjustment…
starkphi 1791ccd
adjust tols for single
starkphi 0c0db75
adjust tols for single
starkphi d1f40d1
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 52eb451
precision adjustment for changes that were merged in from main
starkphi cd837c9
directly calculate vct_a/_b in wp
starkphi 7e03aa9
adjust tols for single
starkphi a84b03a
readd ruff hint (merge error)
starkphi 98f387a
rm comment
starkphi db0ca62
mention single-precision testing
starkphi 413e445
Merge branch 'main' into add_single_precision_dycore_part1
starkphi a9fce47
add single tests to CI
starkphi 0f7a728
Merge branch 'main' into add_single_precision_dycore_part1
starkphi bc34a21
double and single to default?
starkphi 1d1ab92
fix __post_init__duplicate (merge error)
starkphi d1871b1
Revert "[ok?] add break condition for faster runs in single"
starkphi 24fd9e9
only cast if not None
starkphi ae13076
pre-commit formatting changes
starkphi eb6957a
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 5bc2bec
changes to make pre-commit happy
starkphi a0ed564
fix reverting error
starkphi bacc214
Merge branch 'main' into add_single_precision_dycore_part1
starkphi aede9c4
more pre-commit oriented changes
starkphi bbc1985
more pre-commit
starkphi 180d8e1
fix errors I introduced earlier
starkphi af35539
muphys and microphysics integration tests single_precision_ready
starkphi c5c7572
Merge branch 'main' into add_single_precision_dycore_part1
starkphi ffcf033
use hash of job name for build
starkphi 2bc8d72
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 22c5a3b
Rename precision env var
starkphi d52c59f
readding mdformat-myst
starkphi 64ee7ce
change tols and fix type errors
starkphi 5e6f41b
pre-commit
starkphi f4b0466
Keep the ta.{wp,vp}float spelling where main uses it
starkphi df8ec66
add return type and fix a type warning
starkphi 646612b
Wire PRECISION_VARIANTS through the CI pipeline generator
starkphi d064583
Use GTXFieldType as return type for FieldSource.export_field
starkphi 0f527a2
Update ci/default.yml
starkphi 157f7b4
Merge branch 'add_single_p1_santis_280826' into add_single_precision_…
starkphi 2015b28
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 5028151
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 3094ed3
Make {w,v}pfloat use a little more consistent
starkphi d14f1f4
rm comment
starkphi 611f658
remove cast to int
starkphi 8ec043a
simplify TypeVar T, inline state_utils.to_data_array
starkphi eee65c3
ci: normalize float precision to a matrix dimension
starkphi 6be2df2
fix max_nudging_coeffient use
starkphi 4f42e9d
pre-commit changes
starkphi 9ff0fb7
mypy: remove broad valid-type ignore
starkphi 48097c1
Update .cscs-ci/merge.yml
starkphi e60f3a8
Revert old change
starkphi 72b8f6c
clean up
starkphi d10d30b
Apply suggestion from @msimberg
starkphi 33f288e
Merge branch 'main' into add_single_precision_dycore_part1
starkphi a908017
uniformly use _set_constant_.. style
starkphi f33b187
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 7603d8b
rename factory internal type provider
starkphi 1ecce6c
Revert "remove cast to int"
4f8447d
Merge branch 'main' into add_single_precision_dycore_part1
starkphi c3a1f4c
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 0ae83be
fix AttributeError: 'str' object has no attribute 'append'
starkphi 5a77fbd
rename dataclass wpfloat cast helper and default to cast all floats
starkphi c20412d
rename dataclass wpfloat cast helper and default to cast all floats
starkphi 2066282
pre-commit formatting
starkphi dbbb3ee
Fix test command for single-precision execution
starkphi 16c8dad
Rename export_field -> get (#1472)
starkphi 65072a0
Update model/atmosphere/diffusion/src/icon4py/model/atmosphere/diffus…
starkphi 5ddf51a
Merge branch 'add_single_precision_dycore_part1' of github.com:C2SM/i…
starkphi 9f00fd9
add missing cast
starkphi 3857c92
move double precision variable one level up for benchmarks' yml
starkphi 56c217c
let <no dtype> be wpfloat
starkphi c172087
add missing casts
starkphi 9c6023b
change tols for single
starkphi 19f7f87
ruff formatting
starkphi cd86826
remove unnecessary line
starkphi 53ac11a
agent updated agent file
starkphi b42acb1
use 'get' -> for double precision it is no different than get_full_pr…
starkphi 25643c4
remove weird exchange "or"
starkphi edb6fde
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 498fe35
remove 'astype' around math fct like sqrt, exp, log, gamma on scalars
starkphi c92148c
ruff formatting
starkphi 7b08342
fix some tests
starkphi f169bfe
Merge branch 'main' into add_single_precision_dycore_part1
starkphi 562a634
use dtime fct in tests
starkphi 8be974b
fix typo
starkphi e388163
make mypy happy
starkphi 36e0e53
fix dtypes in diffusion
starkphi 567696a
more single precision tests in diffusion
starkphi File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.