Closed claresinger closed 4 years ago
This is awesome! I can't believe this branch was brought back to life!
What we noticed with @claresinger yesterday is that there is a lot more rain water compared to cloud water in those simulations. It's similar to the kinematic tests in the GMD2015 paper, but with even less cloud water than rain. Maybe we should compare with the SD simulation with a similar aerosol size distribution?
Here is a direct comparison of the superdroplets to the bulk2m for the same initial aerosol distribution. The bulk2m has too much rain and the superdroplets give the more physically reasonable result. The huge q_rain for 2 moment is affecting the theta and qt profiles.
Either there is a bug in the coupling to the LES or there is a bug in libcloudph++ in the implementation of the 2 moment scheme.
I've never used blk_2m, so I have no clue if this is blk_2m bug or a bug in coupling with UWLCM. I will have a look at the coupling once I am a little less busy :) @trontrytel did you use blk_2m? Maybe in parcel? Did it work well?
I only ever used it in the kinematic setup from our GMD libcloudph++ paper. There it seemed to give results similar to super-droplet. Copy-pasting from the paper, results of 30 minutes of kinematic eddy
blk-2m:
super-droplet:
Thats the only benchmark I have for it
I'll go over the blk_2m code this week. But I'm hoping it's somewhere in the coupling to LES
I have been trying to guess what is causing issues with the blk_2m. One thing I noticed is that the rhs for the bulk 1m scheme are computed like this: https://github.com/igfuw/UWLCM/blob/024e8a7428fdd4f26fff472cd8fa238200b00da6/src/solvers/slvr_blk_1m.hpp#L213
And for the blk_2m like this: https://github.com/claresinger/UWLCM/blob/9b545c4da667fde474e60eadd67d4d68dbabd832/src/solvers/slvr_blk_2m.hpp#L216
i.e. there is an additional beta * something term in the pull request that is commented out in master? @pdziekan which way should it be?
The beta term is not necessary, but beta is equal to zero anyway.
I wanted to make a PR to Clare's branch with some minor fixes to blk_2m, but I accidentally ended up pushing it directly to Clare's repo. Sorry @claresinger , I had no idea that git would allow me to do that.
Changes I introduced:
I don't expect these changes to fix results of blk_2m, unless there was some weird bug with record_all.
Found one bug in the coupling that had to do with xx_src
that I fixed. This helped decrease the amount of rain generated in 2-moment to be much more similar to super droplets, but still too much rain. (Top row is latest commit, bottom row is from the Dec 6 commit.)
I have merged in the latest changes from master. I have also gotten rid of the pieces that were adding aerosol distribution params to the user_params
because it does not belong in this PR. Thanks for your suggestion in Issue #116.
@pdziekan The tests on travis are timing out and failing. I'm not sure how to remedy this.
@pdziekan Never mind, apparently all the tests have passed now! I didn't change anything except removing the tests/build/
folder that I had forgotten to exclude in my .gitignore
file.
I will run some short simulations of dycoms_rf02
to see how the superdroplet and blk2m results compare. Then, if it all looks reasonable, hopefully we can merge this into master.
Results are unchanged with all the updates from master (compared to the last plot I uploaded from Jan 27). Still a rather large difference between blk2m and lgrngn, but same order of magnitude for everything except qr.
If this looks reasonable to you, @pdziekan and @trontrytel, then let's merge?
@pdziekan Can this PR be merged?
Add bulk double-moment scheme to master. This branch was started by Anna (@trontrytel) 2 years ago, but never got merged into master. We're not sure if there was a reason for that/if something is missing. I have gotten it up-to-date with current master. Everything compiles. Preliminary tests with
dycoms_rf02
seem to give reasonable results. I also added the option to set the aerosol distribution parameters from the call tobicycles
asuser_params
. Please check that this is correct!