NorESMhub / CAM

Community Atmosphere Model including CAM6-Nor branches
1 stars 20 forks source link

Cam cesm2 1 rel 05 nor #1

Closed annefou closed 4 years ago

annefou commented 4 years ago

CAM cesm2 1 rel 05 with CAM-NOR updates (CMIP6).

annefou commented 4 years ago

@tto061 Continuing what we have done; this PR corresponds to components/cam from norESM featureCESM2.1.0-OsloDevelopment-FixPrints Here is what I have done:

Prepare Noresm-dev with CAM-NOR (components/cam)

git clone git@github.com:metno/noresm-dev.git CAM-NOR
cd CAM-NOR
git checkout featureCESM2.1.0-OsloDevelopment-FixPrints
git remote rm origin
git filter-branch --subdirectory-filter components/cam -- --all
git reset --hard
git gc --aggressive
git prune
git clean -fd

Prepare CAM (CESM) with a branch for CAM-Nor

In the command below, replace annefou by your own github username:

git clone git@github.com:annefou/CAM.git
git checkout cam_cesm2_1_rel_05-Nor
git remote add oslo-cam /home/mobaxterm/CAM-NOR
git pull oslo-cam featureCESM2.1.0-OsloDevelopment-FixPrints --allow-unrelated-histories -X theirs
git push origin -u cam_cesm2_1_rel_05-Nor
tto061 commented 4 years ago

Thanks Anne. More or less what I tried, except for pruning/cleaning (whatever that means). I wonder however whether clobbering the common fortran sources in this way keep the CESM-->NorESM history for those sources. (This is why I hand-selected the pure Oslo files with the tar, rm and untar steps). A test case to see if that history is visible could be for example cam/src/dynamics/fv/cd_core.F90 Best regards Thomas

On 2020-02-05 19:57, Anne Fouilloux wrote:

@tto061 https://github.com/tto061 Continuing what we have done; this PR corresponds to components/cam from norESM featureCESM2.1.0-OsloDevelopment-FixPrints Here is what I have done:

  Prepare Noresm-dev with CAM-NOR (components/cam)

|git clone git@github.com:metno/noresm-dev.git CAM-NOR cd CAM-NOR git checkout featureCESM2.1.0-OsloDevelopment-FixPrints git remote rm origin git filter-branch --subdirectory-filter components/cam -- --all git reset --hard git gc --aggressive git prune git clean -fd |

  Prepare CAM (CESM) with a branch for CAM-Nor

In the command below, replace |annefou| by your own github username:

|git clone git@github.com:annefou/CAM.git git checkout cam_cesm2_1_rel_05-Nor git remote add oslo-cam /home/mobaxterm/CAM-NOR git pull oslo-cam featureCESM2.1.0-OsloDevelopment-FixPrints --allow-unrelated-histories -X theirs git push origin -u cam_cesm2_1_rel_05-Nor |

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NorESMhub/CAM/pull/1?email_source=notifications&email_token=ADZGLJASOEG36Y5VCCEPCDDRBMD2RA5CNFSM4KQQDTA2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEK4SHSA#issuecomment-582558664, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADZGLJFEXZV5CJP7GGE6CYTRBMD2RANCNFSM4KQQDTAQ.

annefou commented 4 years ago

Here is what we have for src/dynamics/fv/cd_core.F90

Is it what you expect?

commit a156735ca2593fa67ab17580a5cb932792249213
Author: Cheryl Craig <cacraig@ucar.edu>
Date:   Thu May 17 16:10:59 2018 -0600

    'CAM6 initial release

    Imported from https://svn-ccsm-models.cgd.ucar.edu/cam1/trunk@89219
    Committed by Cheryl Craig <cacraig@ucar.edu> at 2018-05-17 16:10:59 -0600
    Original svn commit message:

    CAM6 initial release'

commit 06679647eeac052992ee8bbe409f285c503db974
Author: Thomas Toniazzo <tto061@login-1-2.fram.sigma2.no>
Date:   Wed Jun 5 16:14:09 2019 +0200

    New keywords for FV-dycore AM modifications, and corresponding CESM and NorESM defaults

commit 234400d208e36efffb03f3ac333c4652cff26ab4
Author: DirkOlivie <dirk.olivie@met.no>
Date:   Fri Mar 8 11:11:35 2019 +0100

    modified cd_core.F90 : change in calculation of second-order term for AM correction

commit 24392f0ca0d3ae804161dce4323fa25f75195d6b
Author: DirkOlivie <dirk.olivie@met.no>
Date:   Thu Jan 10 19:31:27 2019 +0100

    updated with CESM2.1.0 including non-camoslo modifications

commit 10038906d4ac858e00eb84b4549ae7243cd54965
Author: dirkjlo <dirk.olivie@met.no>
Date:   Thu May 24 18:53:18 2018 +0200

    updated with featureCESM2gitmaster_thomas

commit cdb7f39a873d93ff95406058adb57a6c8581ee7a
Author: dirkjlo <dirk.olivie@met.no>
Date:   Wed Dec 20 09:48:01 2017 +0100

    updated with beta07-sandbox227 from NCAR

commit 87d16f88be57d57eea1d152fd1b5199056f42281
Author: tto061 <thomas.toniazzo@uni.no>
Date:   Mon Jul 24 12:02:13 2017 +0200

    added NorESM COARE, energy, and albedo options

commit c6776b5eab94b3d6635fb727cd62b5dc6aa1acce
Author: DirkOlivie <dirk.olivie@met.no>
Date:   Mon Jul 3 11:13:49 2017 +0200

    updated with beta06 from NCAR; modified config_machines.xml, config_batch.xml, and config_compilers.xml; however problem with building case F2000_DEV

commit c66c486e4628282d05d1a86bc3b8ff94d84b50c1
Author: DirkOlivie <dirk.olivie@met.no>
Date:   Fri Jan 20 14:06:08 2017 +0100

    added code identical to https://svn-ccsm-models.cgd.ucar.edu/cesm2/beta/tags/cesm2_0_beta05.  Compiles/runs on hexagon with compset FC55CLUBB for 1 month

commit 0db0abc0d756a8bc4b437b71b4575e376ac61ffe
Author: Oyvind Seland <oyvind.seland@met.no>
Date:   Tue Aug 23 15:24:29 2016 +0200

    added code identical to https://svn-ccsm-models.cgd.ucar.edu/cesm1/tags/cesm1_5_beta07

commit 1a28aad069ec7b63e124b43a6947918dd5060c6f
Author: Alf Grini <alf.grini@met.no>
Date:   Fri Mar 11 10:11:55 2016 +0100

    metno/nores-dev#4: Checked in code identical to https://svn-ccsm-models.cgd.ucar.edu/cesm1/exp/branch_tags/cesm1_5_alpha06_cntlexp_tags/cesm1_5_alpha06_cntlexp07

commit 70747b6b5d8ff2d1bb0410fe9c2cdc2175471876
Author: Alf Grini <alf.grini@met.no>
Date:   Tue Nov 24 11:28:33 2015 +0100

    #1 : Added cesm1_5_beta02 codes
DirkOlivie commented 4 years ago

@annefou Can I just push the "Merge pull request" and choose "Create a merge commit"? Or does it need a thorough check at this moment?

tto061 commented 4 years ago

The history of cd_core pasted above is very sketchy and not accurate, but I don't know what I should expect. We never paid much attention on how the code came together or who did the commits as long as it worked in the end. So I don't see any benefits from the complicated and artificial merge procedure used above for CAM. I don't have alternative suggestions other than overwriting. I do believe that no history is better than a wrong one.

annefou commented 4 years ago

I think you can merge whenever you think it is OK. Anyway, it is in a separate branch so the next step will be to try it out.

Once we have a proper procedure, we should work on the master branch. I think that Thomas suggested (to have a separate repo for the NorESM CAM part) is nice. It would make it even simpler for future CAM releases.

annefou commented 4 years ago

@tto061 You are right. The goal here is also to choose which approach is best (copy with no history or get some history). And this is really up to CAM-NOR developers.

tto061 commented 4 years ago

OK: if we want to have the history right, then the FV source code should be imported directly from the relevant CAM tag (https://github.com/tto061/CAM/releases/tag/cam6_1_029). The energy mods should be imported from https://github.com/metno/noresm-dev/tree/featureCESM2gitmaster_thomas. This may be used for the COARE and albedo mods, too. The we need to find the right original branches for the Oslo bits, too.

annefou commented 4 years ago

OK: if we want to have the history right, then the FV source code should be imported directly from the relevant CAM tag (https://github.com/tto061/CAM/releases/tag/cam6_1_029). The energy mods should be imported from https://github.com/metno/noresm-dev/tree/featureCESM2gitmaster_thomas. This may be used for the COARE and albedo mods, too. The we need to find the right original branches for the Oslo bits, too.

@tto061 So the FV source, it comes from https://github.com/ESCOMP/CAM/releases/tag/cam6_1_029 Stupid questions but for energy mods: are these changes done in specific files/folder? Should we first start with FV modes and then with energy mods?

tto061 commented 4 years ago

OK sorry for putting the case out there and not doing much afterwards. If all agree, I can start re-creating this branch, starting from the CESM CAM dev tag cam6_1_029, merging that with NorESM dev tag featureCESM2gitmaster_thomas, and finally merging this again with FixPrints via CESM2 release (the clobbering procedure). Perhaps I could do the first two steps only (where I can eventual conflicts on my own; pls suggest a name for the resulting temporary NorESM branch) and Oslo could take the last step? If this sounds too complicated we can also keep things as they are, and we can make the origin and history of the various bits transparent in the documentation.

annefou commented 4 years ago

@tto061 Use something like cam_cesm2_1_cam6_1_029-Nor as I understand cam6_1_029 is the starting point. Let me know if you need any help. Thanks a lot.