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

Compare NewtonsMethod with NewtonsMethodAD #29

Open
charleskawczynski opened this issue Dec 7, 2020 · 0 comments
Open

Compare NewtonsMethod with NewtonsMethodAD #29

charleskawczynski opened this issue Dec 7, 2020 · 0 comments
Assignees

Comments

@charleskawczynski
Copy link
Member

Description

Per Tapio's suggestion, we should compare NewtonsMethod with NewtonsMethodAD w.r.t. performance/accuracy, and explore:

If AD is fast enough, it would be nice because it would allow us to use arbitrary (smooth) phase partitioning functions.

@charleskawczynski charleskawczynski self-assigned this Dec 7, 2020
bors bot referenced this issue in CliMA/ClimateMachine.jl Dec 17, 2020
1869: Make swapping sat adjust numerical methods easier r=charleskawczynski a=charleskawczynski

### Description

This PR is a step towards fixing #1831 by using the numerical method type, rather than a function, as an input to `saturation_adjustment`. This should help us more rigorously test/compare the performance and robustness of numerical methods in saturation adjustment for `ρ, e_int, q_tot` and `ρ, p, q_tot` thermo variables, which are the only two cases that are potentially used beyond initialization.

I've also battled the formatter a bit in the `@print` statements, and added a test section for performance with BenchmarkTools.

This also adds a convenience method, `PhaseEquil_dev_only`, _for development only_ so that we can more easily toggle one option at a time while maintaining synchronization with all other arguments.



Co-authored-by: Charles Kawczynski <[email protected]>
bors bot referenced this issue in CliMA/ClimateMachine.jl Dec 17, 2020
1869: Make swapping sat adjust numerical methods easier r=charleskawczynski a=charleskawczynski

### Description

This PR is a step towards fixing #1831 by using the numerical method type, rather than a function, as an input to `saturation_adjustment`. This should help us more rigorously test/compare the performance and robustness of numerical methods in saturation adjustment for `ρ, e_int, q_tot` and `ρ, p, q_tot` thermo variables, which are the only two cases that are potentially used beyond initialization.

I've also battled the formatter a bit in the `@print` statements, and added a test section for performance with BenchmarkTools.

This also adds a convenience method, `PhaseEquil_dev_only`, _for development only_ so that we can more easily toggle one option at a time while maintaining synchronization with all other arguments.



Co-authored-by: Charles Kawczynski <[email protected]>
bors bot referenced this issue in CliMA/ClimateMachine.jl Dec 18, 2020
1869: Make swapping sat adjust numerical methods easier, add GPU tests r=charleskawczynski a=charleskawczynski

### Description

This PR is a step towards fixing #1831 by using the numerical method type, rather than a function, as an input to `saturation_adjustment`. This should help us more rigorously test/compare the performance and robustness of numerical methods in saturation adjustment for `ρ, e_int, q_tot` and `ρ, p, q_tot` thermo variables, which are the only two cases that are potentially used beyond initialization.

I've also battled the formatter a bit in the `@print` statements, and added a test section for performance with BenchmarkTools.

This also:
 - adds a convenience method, `PhaseEquil_dev_only`, _for development only_ so that we can more easily toggle one option at a time while maintaining synchronization with all other arguments.
 - Adds GPU tests



Co-authored-by: Charles Kawczynski <[email protected]>
@charleskawczynski charleskawczynski transferred this issue from CliMA/ClimateMachine.jl Jun 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant