NorESM1 model code on git hub?
During the noresm-core meeting today we discussed the NorESM1 model code which requires updates after the Betzy upgrades, but is not on github. There seems to be quite extensive use of the NorESM1 model in Bergen, and the solution right now is to contact Alok (@monsieuralok ) to get help. Can we add the code on github or is that problematic due to licenses? Please add relevant people :)
The ocean component in NorESM1 is MICOM with HAMOCC biogeochemistry, for which NCC does not hold the license. We went through a process before creating NorESM2, that ended up in the creation of BLOM/iHAMOCC, which we then could publish on GitHub. I don't know the status for the other model components, I suppose they are proved under some open source license since we can host them under the NorESMhub project, but MICOM/HAMOCC is problematic in this context.
What I understand from @monsieuralok is that people are working on different versions/code bases of NorESM1. If there was a single "official" NorESM1 version, I suppose we could have a tar archive file somewhere, e.g. on NIRD. It would be most convenient if we could have it under a www folder, but probably this would be equivalent to publishing the code on GitHub.
Is there a legal way to obtain the correct version of the ocean code? We could host most of NorESM1 with instructions on how to obtain the missing piece.
I wasn't part of the discussion, but maybe an approach for the meantime could be to set up a common git repo elsewhere (e.g. internal gitlab or just nird/betzy, controlled by a gatekeeper) to share the code/various branches? - making an eventual transfer to github and sharing solutions for betzy easier.
@adagj , @gold2718 There is a document "SOFTWARE LICENCE AGREEMENT NorESM - (version 1.0, 1 Sept. 2014)" available from https://mersea-oil-spill.wiki.met.no/_media/noresm/noresm_licenceagreement_140901.pdf
I don't recall having seen this license agreement before, but I also didn't work on NorESM1 versions.
The license clearly restricts the distribution of HAMOCC without consent from MPI. The status for MICOM is unclear to me. In general, regarding distribution of NorESM, the license states:
You are not allowed to distribute the NorESM-Software in its original or
modified form. Third party users must obtain the NorESM-Software directly
from NORESM OWNER. Exception: You are granted the right to share the
NorESM-Software with colleagues from your institution, provided that these
colleagues read, accept, and sign this licence agreement.
I suppose the NORESM OWNER can re-license NorESM (as was done for NorESM2), but it's probably not trivial when the system relies on external sources.
Regardind HAMOCC and licensing:
HAMOCC originally is/was under a quite restrictive license of the Max-Planck Institute (https://code.mpimet.mpg.de/projects/mpi-esm-license). A few years back (2019/2020), after some email exchanges with MPI, we got the following response from Reinhard Budich (MPI):
- You do have a kind of implicit license received from EMR/MPI-M, back when the HAMMOC code was handed over to you the early 2000s, to further develop the code for science purposes w/o further restrictions: At least this is my interpretation of the agreement you had back then.
- The result of this effort is a more or less completely re-developed code iHAMMOCC not sharing too many equal parts with the code back then, or the current code we have as HAMOCC. And you use this code for scientific purposes, but not e.g. commercial purposes.
If this is correct, we (MPI-M) do not have objections against you publishing the iHAMOCC code publicly on GITHUB under your license conditions.
(EMR is the "father" of HAMOCC Ernst Maier-Reimer). This permission was given on very general terms and should also apply to the code in the current NorESM1 version. Based on this, from the HAMOCC perspective, I would not see a problem to put NorESM1 on gitHUB.
To add on @JorgSchwinger : if I am not mistaken (I can ask Reinhard Budich, if that helps), MPIOM/HAMOCC has been recently put under BSD-3C license - which is even more open than LGPL (and which would prevent from putting it under LGPL). Not sure, how that behaves back in time, though. In any case, I would suggest to just ask/inform Reinhard Budich, while I don't see any reason that putting it on github would be declined.
In the process of providing open access to NorESM under GitHub, MICOM was renamed to BLOM and placed in its own repo under the LGPL license. This involved adding copyright and license statements in all of the source files. In addition we removed code for dynamic sea-ice that we felt should not be under our copyright/license. This dynamic sea-ice code was not used in NorESM configurations, but still entangled in the code base. So I foresee a rather substantial effort to do this right for the MICOM component within NorESM1 and just keeping the component name I find troublesome (one of the reasons we renamed to BLOM) in an open access scenario.