Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#71 closed help (fixed)

modifications not inserted

Reported by: sws06gl Owned by: um_support
Component: UM Model Keywords:
Cc: Platform:
UM Version:

Description

Hi all,

I modified the subroutine REPLANCA with a few print/write(6,*) statements, but I checked unzipping and extracting recon_$RUNID.tar.gz and none of those gets actually in the compiled code (file rcf_replanca.f). In the original version of subroutine, there are other write(6,*) statements, that work fine.

To make sure the subroutine is called, I put a print statement right before the call, and it shows in the .leave file, and in the code (file rcf_ancil_atmos.F90, subruotine Rcf_Ancil_Atmos)

I also noticed that in the code online there are two versions of REPLANCA: http://www.cgam.nerc.ac.uk/~ros/um6.1/umpl/RPANCA1A.dk.html and http://www.cgam.nerc.ac.uk/~ros/um6.1/umpl/RCF_REPLANCA.dk.html
the latter seems to be the one actually compiled.

any idea what's happening?

cheers
Giovanni

Change History (2)

comment:1 follow-up: Changed 12 years ago by lois

  • Resolution set to fixed
  • Status changed from new to closed

Hello Giovanni
Apolgies for taking some time to reply to your query.

If you look at the top of the source code for these routines in the source code browser it has a line
if defined (RECON)
which tells you when the routine is included for compilation. So one of the routines is include for reconfiguration and the other when you switch on section 82 1a using the UMUI.
So although both of these routines are loaded in your reconfiguration job then you need to look at the differences bewteen the routines in the comments, one is used for reading in ancillary files and the other is used for updating ancillary files during a model run.
All rather confusing at first.

The other confusing part of version 6.1 is that some parts of the Unified model code has been rewritten in free style F90. So a large part of the reconfigration code is now in free style F90 whereas all the other code is fixed style F90 like code.
So if you write a mod for a fixed style F90 subroutine then your mod should also be fixed style F90 code and this mod must have the extension .mf77
If you are writing a mod for a free style F90 subroutine then your mod can also be free style F90 and then you need to have the extension .mf90.

I hope this explanation helps get your mods working.

Lois

comment:2 in reply to: ↑ 1 Changed 12 years ago by sws06gl

yes it did work!! :)

thank you very much!

Giovanni

Replying to lois:

Hello Giovanni
Apolgies for taking some time to reply to your query.

If you look at the top of the source code for these routines in the source code browser it has a line
if defined (RECON)
which tells you when the routine is included for compilation. So one of the routines is include for reconfiguration and the other when you switch on section 82 1a using the UMUI.
So although both of these routines are loaded in your reconfiguration job then you need to look at the differences bewteen the routines in the comments, one is used for reading in ancillary files and the other is used for updating ancillary files during a model run.
All rather confusing at first.

The other confusing part of version 6.1 is that some parts of the Unified model code has been rewritten in free style F90. So a large part of the reconfigration code is now in free style F90 whereas all the other code is fixed style F90 like code.
So if you write a mod for a fixed style F90 subroutine then your mod should also be fixed style F90 code and this mod must have the extension .mf77
If you are writing a mod for a free style F90 subroutine then your mod can also be free style F90 and then you need to have the extension .mf90.

I hope this explanation helps get your mods working.

Lois

Note: See TracTickets for help on using tickets.