Get SIF canopy layer code into JULES trunk

Hi Patrick
Can you get the SIF canopy layer code accepted into the JULES trunk?
Tristan

Hi Patrick,

My version of JULES with canopy layer outputs (and hence as a model dimension) is here:

/home/users/db903833/src/jules5.0/sif_trunk (on RACC)

It appears to be JULES 5.0. I took my lead from here:

https://jules-lsm.github.io/vn7.0/code/io.html#implementing-new-variables-for-input-and-output

but I confess I can’t see the bit about adding new dimensions!

Cheers,
Tristan.

ps - I note there are a bunch of changes in:
src/io/model_interface

to the following:
model_interface_mod.F90
extract_var.inc
get_var_levs_dims.inc
variable_metadata.inc

I think it’s these bits that are the core changes needed outside of the “science” parts of the code.

Tristan

Hi Tristan:

I copied your code to JASMIN under /home/users/pmcguire/jules/RACC__db903833__src__jules5.0__sif_trunk2

and I checked our JULES 5.0 with fcm checkout fcm:jules.x_tr@vn5.0 and I put vn5.0 under /home/users/pmcguire/jules/jules-vn5.0

Then I did diff -r jules-vn5.0 RACC__db903833__src__jules5.0__sif_trunk2

I see the differences.

Can I check your version into the MOSRS archive? Or have you already checked it in there or somewhere else?

I guess you already have an MOSRS account, as well.

Patrick

Hi Patrick,

Can I check your version into the MOSRS archive?
Yes, please do.

Or have you already checked it in there or somewhere else?
I have not.

I guess you already have an MOSRS account, as well.
I do, but happy for you to own this.

Tristan.

Hi Tristan
Thanks!

I have checked it in to MOSRS
as https://code.metoffice.gov.uk/svn/jules/main/branches/dev/patrickmcguire/vn5.0_sif1

I think to get this code into the trunk, I will have to update it to the latest version of JULES, which I will do now.
Patrick

Hi Tristan
I started merging your vn5.0_sif1 branch with the latest version of JULES (7.0). Not sure how long it will take me to merge this. There have been a lot of changes from JULES 5.0 to 7.0 in the trunk.
Patrick

Hi Tristan:
Do you have an example JULES suite that uses the vn5.0_sif1 branch, which I can work on testing with my copy of this branch and for testing the porting from jules 5.0 to jules 7.0?
Patrick

Hi Tristan:
I have merged in the SIF changes you made in this JULES5.0 branch:
https://code.metoffice.gov.uk/svn/jules/main/branches/dev/patrickmcguire/vn5.0_sif1
into this JULES7.0 branch:
https://code.metoffice.gov.uk/svn/jules/main/branches/dev/patrickmcguire/vn7.0_sif1

This is a first draft. I haven’t tried to compile it yet, so there are probably some things to fix.

There were a lot of differences in the snow code from JULES 5.0 trunk to the vn5.0_sif1 branch. I am not sure if you made those changes or if you picked up the JULES 5.0 trunk after someone else made those snow changes. I didn’t replicate these vn5.0_sif1 snow code changes in the vn7.0_sif1 branch.

Do you have a JULES suite that I could use to test the vn5.0_sif1 and vn7.0_sif1 branches?
Patrick

Hi Patrick,

Thanks for this.

I don’t have a suite to test those modifications, but if you clone a global suite forced by WFDEI (or WFDE5, or in fact, any reanalysis) and set it to output the last 2-3 years of canopy level variables that would be a good test.

Also useful to have fsmc as an output.

Thanks,
Tristan.

Thanks, Tristan:
That sounds possible and do-able, but it might take a little while.
Do you have some other code that you’ve used before with your JULES5.0 SIF code that could be used to do a quicker check?
Patrick

Hi Tristan:
Any news on this?
Patrick

Hi Patrick,

Sorry for the slow reply. You could take a look here:

/gws/nopw/j04/odanceo/tquaife/jules_sif/global

That has a set of JULES nmls I previously ran to use this.

However, I think my preference would be if we could run a standard configuration for this work. What I did in that directory was very hacked together.

Thanks,
Tristan.

Hi Tristan:
This is excellent! It will make it a lot easier to do a quicker check of whether the FORTRAN code for JULES SIF is working. I will aim to do this first, and then the global runs that you want, after this is working.
Patrick

Hi Tristan:
I was able to use your namelists to run my checked-in branch copy of your JULES5.0 SIF code!

The checked-in branch copy is in:
https://code.metoffice.gov.uk/svn/jules/main/branches/dev/patrickmcguire/vn5.0_sif1

I used the suite ~pmcguire/roses/u-al752currentworking11/ to compile this branch.
And I did a test run with your namelists by:

cd /gws/nopw/j04/odanceo/pmcguire/jules_sif/global
./load_modules_and_run.sh > run2.log 2> run2.err &

The driving data for January 1979 is missing for some reason, so I started the run instead in February 1979. It produces spinup output.

I will next work on compiling my JULES7.0 SIF branch.
Patrick

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Hi Tristan:
I was able to get rid of a few bugs in my JULES7.0 solar-induced fluorescence (SIF) code!
This ports your SIF-related changes of JULES5.0 from JULES5.0 to JULES7.0.
I also manually updated the JULES5.0 SIF namelists to work with the JULES7.0 FORTRAN code.

The checked-in branch copy is in:
https://code.metoffice.gov.uk/svn/jules/main/branches/dev/patrickmcguire/vn7.0_sif1

I used the suite ~pmcguire/roses/u-al752currentworking11_v7/ to compile this branch.
And I did a test run with the updated namelists by:

cd /gws/nopw/j04/odanceo/pmcguire/jules_sif/global_v7
./load_modules_and_run_v7.sh > run_v7c.log 2> run_v7c.err &

As when running this with your JULES5.0 SIF branch, the driving data for January 1979 is missing for some reason, so I started the run instead in February 1979. It produces spinup output.

Among the next steps is to verify that the output makes sense.

Patrick

Thanks Patrick. Can you remind me what variables you have coming out on a per-canopy-layer basis?

Also I wonder if we should maybe not call this the “SIF” version (which I am aware was my idea). Maybe “layered canopy outputs” would be more accurate. Ultimately we will use this to calculate SIF offline rather than inside the model itself. It would be great to do the latter, but might take a lot more work.

Hi Tristan:
From the namelist file:
/gws/nopw/j04/odanceo/pmcguire/jules_sif/global_v7/output.nml

these are the variables (the layered ones have the '_lyr' suffix):

profile_name='sif_vars',
var='gpp', 'gpp_lyr', 'apar_lyr', 'cmpf_lyr', 'lai', 'frac'

Patrick

1 Like