[MITgcm-devel] [MITgcm-cvs] MITgcm/pkg/exf CVS Commit
Martin Losch
Martin.Losch at awi.de
Mon Sep 5 03:45:52 EDT 2011
Hi Jean-Michel,
thanks for stopping the uncontrolled growth of number of S/Rs, in particular since I am responsible (in part) for this. I found
> csysm15::build_ad> grep -i exf_swapffields *.F | grep -i call
> ctrl_get_gen.F: call exf_SwapFFields( xx_gen0, xx_gen1, mythid )
> exf_set_gen.F: call exf_SwapFFields( gen0, gen1, mythid )
> exf_set_obcs.F: CALL exf_swapffields_xz( obcs_xz_0, obcs_xz_1, nNz,myThid )
> exf_set_obcs.F: CALL exf_swapffields_yz( obcs_yz_0, obcs_yz_1, nNz,myThid )
> exf_set_obcs.F: CALL exf_swapffields_xz( obcs_x_0, obcs_x_1, 1,myThid )
> exf_set_obcs.F: CALL exf_swapffields_yz( obcs_y_0, obcs_y_1, 1,myThid )
> exf_set_runoff.F: call exf_SwapFFields( gen0, gen1, mythid )
> exf_set_uv.F: call exf_SwapFFields( uvec0, uvec1, mythid )
> exf_set_uv.F: call exf_SwapFFields( vvec0, vvec1, mythid )
and all the exf_swapffields* routines do is copy a field an reset another. (exf_set_runoff is basically a cop of exf_set_gen.)
I am wondering wether we need exf_swapffields* at all. They might improve readability a little, but could be replaced by a comment ( "swap forcing fields") and in-lined code for better performance (?) (and fewer fortran files). What do you (and others) think? Is it worth the effort? (in F90 it would mean be just two lines + comment instead of the s/r-call (o:)
Martin
On Sep 2, 2011, at 8:22 PM, Jean-Michel Campin wrote:
> Update of /u/gcmpack/MITgcm/pkg/exf
> In directory forge:/tmp/cvs-serv14770
>
> Modified Files:
> exf_set_obcs.F
> Log Message:
> - add argument nNz (= number of levels) to S/R EXF_SET_OBCS_XZ &
> EXF_SET_OBCS_YZ ; disable S/R EXF_SET_OBCS_X & EXF_SET_OBCS_Y.
> - fix for multi-threaded (assuming loaded arrays are shared).
>
>
> _______________________________________________
> MITgcm-cvs mailing list
> MITgcm-cvs at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-cvs
More information about the MITgcm-devel
mailing list