igfuw / UWLCM

University of Warsaw Lagrangian Cloud Model
GNU General Public License v3.0
6 stars 13 forks source link

add blk_2m to master #91

Closed claresinger closed 4 years ago

claresinger commented 4 years ago

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 to bicycles as user_params. Please check that this is correct!

Screen Shot 2019-11-21 at 14 31 55
trontrytel commented 4 years ago

This is awesome! I can't believe this branch was brought back to life!

Screen Shot 2019-11-21 at 14 31 55

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?

claresinger commented 4 years ago

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.

profs_mu50_kappa01_N100

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.

pdziekan commented 4 years ago

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?

trontrytel commented 4 years ago

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: image

super-droplet: image

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

trontrytel commented 4 years ago

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?

pdziekan commented 4 years ago

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.

claresinger commented 4 years ago

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.)

Screen Shot 2020-01-27 at 15 38 36
claresinger commented 4 years ago

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.

claresinger commented 4 years ago

@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.

claresinger commented 4 years ago

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.

Screen Shot 2020-09-17 at 16 47 47

If this looks reasonable to you, @pdziekan and @trontrytel, then let's merge?

claresinger commented 4 years ago

@pdziekan Can this PR be merged?