Confusion about Nudging Coefficient
-
- Posts: 23
- Joined: Fri Jan 29, 2010 6:17 pm
- Location: GSO URI
Confusion about Nudging Coefficient
Dear ROMS Users,
I have a confusion about the Nudging Coefficient. Take TNUDG as the example. What is TNUDG for? Is it corresponding to WEST/NORTH/EAST/SOUTH_NUDGING or corresponding to TCLM_NUDGING?
From the description in the link: https://www.myroms.org/wiki/index.php/B ... _condition, and description for OBCFAC in *.in files
( OBCFAC Factor between passive (outflow) and active (inflow) open
! boundary conditions. The nudging time scales for the
! active (inflow) conditions are obtained by multiplying
! the passive values by OBCFAC. If OBCFAC > 1, nudging on
! inflow is stronger than on outflow (recommended).
),
it seems that, the TNUDG is for boundary nudging.
However, according to ana_nudgcoef.h,
# ifdef NORTH_TNUDGING
# ifdef TCLM_NUDGING
DO itrc=1,NT(ng)
IF (DOMAIN(ng)%NorthEast_Corner(tile)) THEN
Tobc_out(itrc,ng,inorth)= &
& CLIMA(ng)%Tnudgcof(Lm(ng),Mm(ng)+1,itrc)
Tobc_in (itrc,ng,inorth)=obcfac(ng)*Tobc_out(itrc,ng,inorth)
END IF
IF (DOMAIN(ng)%Northern_Edge(tile)) THEN
DO i=IstrR,IendR
CLIMA(ng)%Tnudgcof(i,Mm(ng)+1,itrc)=0.0_r8
END DO
END IF
END DO
...
my understanding is that, if define climatology and boundary nudging at the same time,
they will share the same TNUDG coefficient except that boundary nudging has a factor of OBCFAC. Am I right?
So, when I define both WEST/NORTH/EAST/SOUTH_NUDGING and TCLM_NUDGING, what should I do to nudge the boundary and climatology in different days, such as with climatology nudging for 1 year length, but boundary nudging for 2 days? Or I should ask, it this possible?
Thank you.
Sincerely,
Qian
I have a confusion about the Nudging Coefficient. Take TNUDG as the example. What is TNUDG for? Is it corresponding to WEST/NORTH/EAST/SOUTH_NUDGING or corresponding to TCLM_NUDGING?
From the description in the link: https://www.myroms.org/wiki/index.php/B ... _condition, and description for OBCFAC in *.in files
( OBCFAC Factor between passive (outflow) and active (inflow) open
! boundary conditions. The nudging time scales for the
! active (inflow) conditions are obtained by multiplying
! the passive values by OBCFAC. If OBCFAC > 1, nudging on
! inflow is stronger than on outflow (recommended).
),
it seems that, the TNUDG is for boundary nudging.
However, according to ana_nudgcoef.h,
# ifdef NORTH_TNUDGING
# ifdef TCLM_NUDGING
DO itrc=1,NT(ng)
IF (DOMAIN(ng)%NorthEast_Corner(tile)) THEN
Tobc_out(itrc,ng,inorth)= &
& CLIMA(ng)%Tnudgcof(Lm(ng),Mm(ng)+1,itrc)
Tobc_in (itrc,ng,inorth)=obcfac(ng)*Tobc_out(itrc,ng,inorth)
END IF
IF (DOMAIN(ng)%Northern_Edge(tile)) THEN
DO i=IstrR,IendR
CLIMA(ng)%Tnudgcof(i,Mm(ng)+1,itrc)=0.0_r8
END DO
END IF
END DO
...
my understanding is that, if define climatology and boundary nudging at the same time,
they will share the same TNUDG coefficient except that boundary nudging has a factor of OBCFAC. Am I right?
So, when I define both WEST/NORTH/EAST/SOUTH_NUDGING and TCLM_NUDGING, what should I do to nudge the boundary and climatology in different days, such as with climatology nudging for 1 year length, but boundary nudging for 2 days? Or I should ask, it this possible?
Thank you.
Sincerely,
Qian
Qianqian@URI
Re: Confusion about Nudging Coefficient
You are correct that TNUDG is being used for more than one thing. What I have done is gone to the section of code where it is being used for SSS nudging and hacked in a multiplicative factor there (with comment and cpp #ifdef). It's very much a kludge.
Re: Confusion about Nudging Coefficient
The best approach is to configure a private ana_nudgcoef.h (in your project Functionals directory that is set in your build script) for the 3-D domain-wide nudging, and leave Tnudg in ocean.in to apply only to the boundaries.
There is a template for ana_nudgcoef.h in the source code in the Functionals directory but it uses Tnudg from ocean.in. So don't follow it too closely. Pay attention to the units of the nudging scales because they are already in inverse time in ana_nudgcoef.h.
An advantage of customizing ana_nudgcoef.h is that you create a spatial distribution for the nudging that makes sense for your application, rather than applying the same nudging time scale everywhere. Most users want relatively little nudging in the centre of the domain where you want ROMS physics to prevail.
Having a private version of ana_nudgcoef.h will shadow the version in the distributed source code, and you don't need to touch the main source code. It also makes it easier (and safer) to manage multiple projects with different nudging setups.
There is a template for ana_nudgcoef.h in the source code in the Functionals directory but it uses Tnudg from ocean.in. So don't follow it too closely. Pay attention to the units of the nudging scales because they are already in inverse time in ana_nudgcoef.h.
An advantage of customizing ana_nudgcoef.h is that you create a spatial distribution for the nudging that makes sense for your application, rather than applying the same nudging time scale everywhere. Most users want relatively little nudging in the centre of the domain where you want ROMS physics to prevail.
Having a private version of ana_nudgcoef.h will shadow the version in the distributed source code, and you don't need to touch the main source code. It also makes it easier (and safer) to manage multiple projects with different nudging setups.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
-
- Posts: 23
- Joined: Fri Jan 29, 2010 6:17 pm
- Location: GSO URI
Re: Confusion about Nudging Coefficient
Thanks a lot for kate and wilkin's reply. Now I know how to get what I want.
Qian
Qian
Qianqian@URI
-
- Posts: 23
- Joined: Fri Jan 29, 2010 6:17 pm
- Location: GSO URI
Re: Confusion about Nudging Coefficient
Dear Users,
We have made several tests about the nudging problem according to the suggestion.
When climatology nudging is defined, we set the nudging coefficients from 5 days to 60 days 8 grids away from the boundary(changed from DAAMEE_4 application
cff1=1.0_r8/(5.0_r8*86400.0_r8)
cff2=1.0_r8/(60.0_r8*86400.0_r8)
DO j=JstrR,MIN(8,JendR)
DO i=IstrR,IendR
wrk(i,j)=cff2+REAL(8-j,r8)*(cff1-cff2)/8.0_r8
END DO
END DO
# ifdef ZCLM_NUDGING
DO j=JstrR,JendR
DO i=IstrR,IendR
CLIMA(ng)%Znudgcof(i,j)=wrk(i,j)
END DO
END DO
# endif
...
). Since there is warning not changing the code about the boundary coefficient, we didn't change it. In my understanding about the code below, the boundary nudging coefficient is set to the value of climatology nudging coefficient at the corresponding location (so 5 days at the southern boundary), and then the climatology nudg coef at the southern boundary is set to zero; however, in the comment part of ana_nudgcoef,h, it is said that: 'Notice that interior nudging coefficient defined above are zero out when boundary condition nudging'. How does it zero out the interior climatology nudg coefficient? I cannot see from the code.
!-----------------------------------------------------------------------
! Set nudging coefficients (1/s) for passive/active (outflow/inflow)
! open boundary conditions. Weak nudging is expected in passive
! outflow conditions and strong nudging is expected in active inflow
! conditions. Notice that interior nudging coefficient defined
! above are zero out when boundary condition nudging. The USER needs
! to adapt this to his/her application!
!-----------------------------------------------------------------------
!
# ifdef SOUTH_FSNUDGING
# ifdef ZCLM_NUDGING
IF (DOMAIN(ng)%SouthWest_Corner(tile)) THEN
FSobc_out(ng,isouth)=CLIMA(ng)%Znudgcof(1,0)
FSobc_in (ng,isouth)=obcfac(ng)*FSobc_out(ng,isouth)
END IF
IF (DOMAIN(ng)%Southern_Edge(tile)) THEN
DO i=IstrR,IendR
CLIMA(ng)%Znudgcof(i,0)=0.0_r8
END DO
END IF
# ifdef DISTRIBUTE
IF (ng.eq.Ngrids) THEN
CALL mp_collect (ng, model, Ngrids, IniVal, FSobc_out(:,isouth))
CALL mp_collect (ng, model, Ngrids, IniVal, FSobc_in (:,isouth))
END IF
# endif
# else
IF (DOMAIN(ng)%SouthWest_Test(tile)) THEN
FSobc_out(ng,isouth)=Znudg(ng)
FSobc_in (ng,isouth)=obcfac(ng)*Znudg(ng)
END IF
# endif
# endif
The main problem we came into with this application is that: At the western boundary, there is a very sharp gradient in temperature. A strip of lower temperature appears. Would anyone please give us some suggestions? Thank you very much. Following is the cppdef about the nudging.
# define EAST_FSCHAPMAN
# define EAST_M2FLATHER
# define EAST_M3RADIATION
# define EAST_M3NUDGING
# define EAST_TRADIATION
# define EAST_TNUDGING
# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_M3RADIATION
# define WEST_M3NUDGING
# define WEST_TRADIATION
# define WEST_TNUDGING
# define SOUTH_FSCHAPMAN
# define SOUTH_M2FLATHER
# define SOUTH_M3RADIATION
# define SOUTH_M3NUDGING
# define SOUTH_TRADIATION
# define SOUTH_TNUDGING
/**/
# define TCLIMATOLOGY
# define TCLM_NUDGING
# define M3CLIMATOLOGY
# define M3CLM_NUDGING
Thanks a lot.
Qian
We have made several tests about the nudging problem according to the suggestion.
When climatology nudging is defined, we set the nudging coefficients from 5 days to 60 days 8 grids away from the boundary(changed from DAAMEE_4 application
cff1=1.0_r8/(5.0_r8*86400.0_r8)
cff2=1.0_r8/(60.0_r8*86400.0_r8)
DO j=JstrR,MIN(8,JendR)
DO i=IstrR,IendR
wrk(i,j)=cff2+REAL(8-j,r8)*(cff1-cff2)/8.0_r8
END DO
END DO
# ifdef ZCLM_NUDGING
DO j=JstrR,JendR
DO i=IstrR,IendR
CLIMA(ng)%Znudgcof(i,j)=wrk(i,j)
END DO
END DO
# endif
...
). Since there is warning not changing the code about the boundary coefficient, we didn't change it. In my understanding about the code below, the boundary nudging coefficient is set to the value of climatology nudging coefficient at the corresponding location (so 5 days at the southern boundary), and then the climatology nudg coef at the southern boundary is set to zero; however, in the comment part of ana_nudgcoef,h, it is said that: 'Notice that interior nudging coefficient defined above are zero out when boundary condition nudging'. How does it zero out the interior climatology nudg coefficient? I cannot see from the code.
!-----------------------------------------------------------------------
! Set nudging coefficients (1/s) for passive/active (outflow/inflow)
! open boundary conditions. Weak nudging is expected in passive
! outflow conditions and strong nudging is expected in active inflow
! conditions. Notice that interior nudging coefficient defined
! above are zero out when boundary condition nudging. The USER needs
! to adapt this to his/her application!
!-----------------------------------------------------------------------
!
# ifdef SOUTH_FSNUDGING
# ifdef ZCLM_NUDGING
IF (DOMAIN(ng)%SouthWest_Corner(tile)) THEN
FSobc_out(ng,isouth)=CLIMA(ng)%Znudgcof(1,0)
FSobc_in (ng,isouth)=obcfac(ng)*FSobc_out(ng,isouth)
END IF
IF (DOMAIN(ng)%Southern_Edge(tile)) THEN
DO i=IstrR,IendR
CLIMA(ng)%Znudgcof(i,0)=0.0_r8
END DO
END IF
# ifdef DISTRIBUTE
IF (ng.eq.Ngrids) THEN
CALL mp_collect (ng, model, Ngrids, IniVal, FSobc_out(:,isouth))
CALL mp_collect (ng, model, Ngrids, IniVal, FSobc_in (:,isouth))
END IF
# endif
# else
IF (DOMAIN(ng)%SouthWest_Test(tile)) THEN
FSobc_out(ng,isouth)=Znudg(ng)
FSobc_in (ng,isouth)=obcfac(ng)*Znudg(ng)
END IF
# endif
# endif
The main problem we came into with this application is that: At the western boundary, there is a very sharp gradient in temperature. A strip of lower temperature appears. Would anyone please give us some suggestions? Thank you very much. Following is the cppdef about the nudging.
# define EAST_FSCHAPMAN
# define EAST_M2FLATHER
# define EAST_M3RADIATION
# define EAST_M3NUDGING
# define EAST_TRADIATION
# define EAST_TNUDGING
# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_M3RADIATION
# define WEST_M3NUDGING
# define WEST_TRADIATION
# define WEST_TNUDGING
# define SOUTH_FSCHAPMAN
# define SOUTH_M2FLATHER
# define SOUTH_M3RADIATION
# define SOUTH_M3NUDGING
# define SOUTH_TRADIATION
# define SOUTH_TNUDGING
/**/
# define TCLIMATOLOGY
# define TCLM_NUDGING
# define M3CLIMATOLOGY
# define M3CLM_NUDGING
Thanks a lot.
Qian
Qianqian@URI
-
- Posts: 11
- Joined: Wed Dec 19, 2007 4:44 pm
- Location: School of Ocean and Earth Science and Technology
Re: Confusion about Nudging Coefficient
From the code in ana_nudgecoef.h if you want to have just a relaxation boundary condition you must activate the option for climatological nudging (grid interior) such as TCLM_NUDGING, even if you don't want a widespread climatological nudging.
So if I want to have a fairly strong nudging at the boundary I need to code values for Tnudgcof(i,j,itemp) that are space dependent: zero in the interior and high on the boundaries in ana_nudgecoef.h.
Question is that sufficient or activation of TCLM_NUDGING means I need to alter other modules, subroutines and/or .h files?
Thanks!
So if I want to have a fairly strong nudging at the boundary I need to code values for Tnudgcof(i,j,itemp) that are space dependent: zero in the interior and high on the boundaries in ana_nudgecoef.h.
Question is that sufficient or activation of TCLM_NUDGING means I need to alter other modules, subroutines and/or .h files?
Thanks!
Re: Confusion about Nudging Coefficient
If you want to have nudging ONLY on the boundary points - i.e. strictly on the perimeter - then you don't need TCLM_NUDGING. There are options in the open boundary conditions to do this.
In the most recent version of the code this option is activated with the "Nud" options in ocean.in.
In the most recent version of the code this option is activated with the "Nud" options in ocean.in.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
Re: Confusion about Nudging Coefficient
looks like the OBC didn't handle the coastal trapped waves well.
Since you seleted Flather, did you also include tidal forcing in your application?
Since you seleted Flather, did you also include tidal forcing in your application?
-
- Posts: 34
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of Cina
Re: Confusion about Nudging Coefficient
I am still confused about the nudging coefficient.
In my application I set LBC as follows:
ad_LBC(isFsur) == Clo Clo Clo Clo ! free-surface
ad_LBC(isUbar) == Clo Clo Clo Clo ! 2D U-momentum
ad_LBC(isVbar) == Clo Clo Clo Clo ! 2D U-momentum
ad_LBC(isUvel) == Clo Clo Clo Clo ! 3D U-momentum
ad_LBC(isVvel) == Clo Clo Clo Clo ! 3D V-momentum
ad_LBC(isMtke) == Clo Clo Clo Clo ! mixing TKE
ad_LBC(isTvar) == Clo Clo Clo Clo \ ! temperature
Clo Clo Clo Clo ! salinity
and:
! Nudging/relaxation time scales, inverse scales will be computed
! internally, [1:Ngrids].
TNUDG == 0.0d0 0.0d0 ! days
ZNUDG == 0.0d0 ! days
M2NUDG == 0.0d0 ! days
M3NUDG == 0.0d0 ! days
! Factor between passive (outflow) and active (inflow) open boundary
! conditions, [1:Ngrids]. If OBCFAC > 1, nudging on inflow is stronger
! than on outflow (recommended).
OBCFAC == 0.0d0 ! nondimensional
In my .h file:
#define UV_ADV
#define UV_COR
#define UV_QDRAG
#define DJ_GRADPS
#ifdef TS_U3ADV_SPLIT
# define TS_DIF4
# define DIFF_GRID
# define MIX_GEO_TS
#endif
#ifdef UV_U3ADV_SPLIT
# define UV_VIS4
# define VISC_GRID
# define MIX_GEO_UV
#endif
#define NONLIN_EOS
#define SALINITY
#define SOLVE3D
#define MASKING
#define SPLINES
#define QCORRECTION
#define SRELAXATION
#define CURVGRID
#ifdef LMD_MIXING
# define LMD_RIMIX
# define LMD_CONVEC
# define LMD_SKPP
# define LMD_NONLOCAL
#endif
#define ANA_BSFLUX
#define ANA_BTFLUX
I only have the *grd.nc,*frc.nc and *ini.nc as input files.It seems that there are not any nudging !!
But why In my log file:
Analytical header files used:
/data/mengqingjun/Projects/bhd2/ana_btflux.h
/data/mengqingjun/Projects/bhd2/ana_nudgcoef.h
Could anyone help me?
In my application I set LBC as follows:
ad_LBC(isFsur) == Clo Clo Clo Clo ! free-surface
ad_LBC(isUbar) == Clo Clo Clo Clo ! 2D U-momentum
ad_LBC(isVbar) == Clo Clo Clo Clo ! 2D U-momentum
ad_LBC(isUvel) == Clo Clo Clo Clo ! 3D U-momentum
ad_LBC(isVvel) == Clo Clo Clo Clo ! 3D V-momentum
ad_LBC(isMtke) == Clo Clo Clo Clo ! mixing TKE
ad_LBC(isTvar) == Clo Clo Clo Clo \ ! temperature
Clo Clo Clo Clo ! salinity
and:
! Nudging/relaxation time scales, inverse scales will be computed
! internally, [1:Ngrids].
TNUDG == 0.0d0 0.0d0 ! days
ZNUDG == 0.0d0 ! days
M2NUDG == 0.0d0 ! days
M3NUDG == 0.0d0 ! days
! Factor between passive (outflow) and active (inflow) open boundary
! conditions, [1:Ngrids]. If OBCFAC > 1, nudging on inflow is stronger
! than on outflow (recommended).
OBCFAC == 0.0d0 ! nondimensional
In my .h file:
#define UV_ADV
#define UV_COR
#define UV_QDRAG
#define DJ_GRADPS
#ifdef TS_U3ADV_SPLIT
# define TS_DIF4
# define DIFF_GRID
# define MIX_GEO_TS
#endif
#ifdef UV_U3ADV_SPLIT
# define UV_VIS4
# define VISC_GRID
# define MIX_GEO_UV
#endif
#define NONLIN_EOS
#define SALINITY
#define SOLVE3D
#define MASKING
#define SPLINES
#define QCORRECTION
#define SRELAXATION
#define CURVGRID
#ifdef LMD_MIXING
# define LMD_RIMIX
# define LMD_CONVEC
# define LMD_SKPP
# define LMD_NONLOCAL
#endif
#define ANA_BSFLUX
#define ANA_BTFLUX
I only have the *grd.nc,*frc.nc and *ini.nc as input files.It seems that there are not any nudging !!
But why In my log file:
Analytical header files used:
/data/mengqingjun/Projects/bhd2/ana_btflux.h
/data/mengqingjun/Projects/bhd2/ana_nudgcoef.h
Could anyone help me?
-
- Posts: 34
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of Cina
Re: Confusion about Nudging Coefficient
ps. I mean that how the ana_nudgcoef.h was used ?
Re: Confusion about Nudging Coefficient
You have used:
Those are for the adjoint model. But you have made them CLO meaning closed, so no nudging anyway.
Nudging is used with either:
(1) open boundary option RadNud (for radiation and nudging) but you need to have a boundary conditions file for that (BRYNAME).
or
(2) nudging is applied "everywhere" depending on the configuration in ana_nudgcoef.h and values in TNUDG etc. If you have an ana_nudgcoef.h in your project directory ROMS will compile it. That's why you get the message ...
Code: Select all
ad_LBC(...
Nudging is used with either:
(1) open boundary option RadNud (for radiation and nudging) but you need to have a boundary conditions file for that (BRYNAME).
or
(2) nudging is applied "everywhere" depending on the configuration in ana_nudgcoef.h and values in TNUDG etc. If you have an ana_nudgcoef.h in your project directory ROMS will compile it. That's why you get the message ...
but I see no option that causes ROMS to use those coefficients.Analytical header files used:
...
/data/mengqingjun/Projects/bhd2/ana_nudgcoef.h
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
-
- Posts: 34
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of Cina
Re: Confusion about Nudging Coefficient
Sorry, I make a mistake ,I used LBC():
LBC(isFsur) == Clo Clo Clo Clo ! free-surface
LBC(isUbar) == Clo Clo Clo Clo ! 2D U-momentum
LBC(isVbar) == Clo Clo Clo Clo ! 2D V-momentum
LBC(isUvel) == Clo Clo Clo Clo ! 3D U-momentum
LBC(isVvel) == Clo Clo Clo Clo ! 3D V-momentum
LBC(isMtke) == Clo Clo Clo Clo ! mixing TKE
LBC(isTvar) == Clo Clo Clo Clo \ ! temperature
Clo Clo Clo Clo ! salinity
But it all closed anyway!
LBC(isFsur) == Clo Clo Clo Clo ! free-surface
LBC(isUbar) == Clo Clo Clo Clo ! 2D U-momentum
LBC(isVbar) == Clo Clo Clo Clo ! 2D V-momentum
LBC(isUvel) == Clo Clo Clo Clo ! 3D U-momentum
LBC(isVvel) == Clo Clo Clo Clo ! 3D V-momentum
LBC(isMtke) == Clo Clo Clo Clo ! mixing TKE
LBC(isTvar) == Clo Clo Clo Clo \ ! temperature
Clo Clo Clo Clo ! salinity
But it all closed anyway!
Does it mean that Although the ana_nudgcoef.h was compiled, even the file was not used ,but I can get the message ?If you have an ana_nudgcoef.h in your project directory ROMS will compile it. That's why you get the message ...
-
- Posts: 34
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of Cina
Re: Confusion about Nudging Coefficient
ps. Are there some CPP definitations that could control wheather the file ana_nudgcoef.h will be compiled or not ?
Re: Confusion about Nudging Coefficient
Yes, you have:
#define SRELAXATION
which requires Tnudg.
#define SRELAXATION
which requires Tnudg.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
-
- Posts: 34
- Joined: Sat Sep 08, 2012 2:15 pm
- Location: Ocean University Of Cina
Re: Confusion about Nudging Coefficient
Thank you John for your quick replies !
Except for SRELAXATION TCLM_NUDGING ,are there any other else CPP definations that will compile the file ana_nudgcoef.h?
Coulkd I think that even some files for examole ana_nudgcoef.h was compiled ,they may not be used when run the application ?
Thanks!
Except for SRELAXATION TCLM_NUDGING ,are there any other else CPP definations that will compile the file ana_nudgcoef.h?
Coulkd I think that even some files for examole ana_nudgcoef.h was compiled ,they may not be used when run the application ?
Thanks!
-
- Posts: 3
- Joined: Tue Apr 10, 2012 2:24 pm
- Location: IOUSP
Re: Confusion about Nudging Coefficient
Hello all,
I followed wilkin's suggestion and created a private ana_nudgcoef.h to configure a spatial distribution of the nudging coefficients for my experiment.
I wonder is there is any way of having the nudging coefficient spatial distribution (matrices) as output, in one of the avg/his/dia/etc files.
Thanks in advance,
I followed wilkin's suggestion and created a private ana_nudgcoef.h to configure a spatial distribution of the nudging coefficients for my experiment.
I wonder is there is any way of having the nudging coefficient spatial distribution (matrices) as output, in one of the avg/his/dia/etc files.
Thanks in advance,
Re: Confusion about Nudging Coefficient
Rather than use ana_nudgcoef for a complicated configuration of spatially varying nudging coefficients, there is the facility now (since 03/13/14) to specify them within a standalone netcdf file identified within ocean.in
The new options are described here:
https://www.myroms.org/projects/src/ticket/627
This would allow you to keep a record in a netcdf file of the set-up, and to load them into whatever software you use for analysis if that is the reason you ask whether the analytical set-up could be written to output.
Also note that with the changes described at https://www.myroms.org/projects/src/ticket/627 the nudging coefficients for 3-D variables include the k-index so that they can be made to vary appropriately in the vertical for your application. This is a significant improvement on the 2-dimensional only nudging coefficients in previous versions of ROMS.
Code: Select all
NUDNAME == ocean_nud.nc
https://www.myroms.org/projects/src/ticket/627
This would allow you to keep a record in a netcdf file of the set-up, and to load them into whatever software you use for analysis if that is the reason you ask whether the analytical set-up could be written to output.
Also note that with the changes described at https://www.myroms.org/projects/src/ticket/627 the nudging coefficients for 3-D variables include the k-index so that they can be made to vary appropriately in the vertical for your application. This is a significant improvement on the 2-dimensional only nudging coefficients in previous versions of ROMS.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu