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

Dehardcodefication #5

Open
ziu1986 opened this issue Oct 23, 2018 · 1 comment
Open

Dehardcodefication #5

ziu1986 opened this issue Oct 23, 2018 · 1 comment

Comments

@ziu1986
Copy link
Contributor

ziu1986 commented Oct 23, 2018

Something that has been bothering me since the very first day I touched the code is the extensive use of hardcoded parameters and variables. Some are at least located in an own module (cmn_parameters.f90) which is not an optimal solution, but still much better. The problem that arises from this is, that different values may be used in different modules of the model. Differing names make it hard to track the variables by greping.

  1. On short-terms: Constants and variables should be tracked and but into cmn_paramerters.f90.
  2. Updates: References should be checked and constants updated if there had been recent updates.
    => Well, this may actually raise follow-up issue... testing.
  3. On the long run: I would like to see the implement an xml-based solution (or something similar).
@ziu1986
Copy link
Contributor Author

ziu1986 commented Nov 18, 2019

One step closer towards de-hardcodification:
All hardcoded paths to tables are now read from .inp.
The corresponding variables have been placed in cmn_chem.f90 or cmn_fjx.f90, respectively.
A dummy tracerlist has been created in which the hardcoded paths are substituted by $CICERO and $CTM3_INPUT and $CTM3_USR_INPUT, respectively. Those are replaced using "sed" in the updated job submission scripts (see examples). The current $CTM3_USR_INPUT (astra storage on abel) will become obsolete in the before December 1 since all date will be reunited there. The variable can be used by users to introduce their own forcings.

PLEASE: UPDATE your own inp-files AND job submission scripts accordingly!

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