"READ_PHYPAR - could not find input file:ocean_ini.nc" Err
"READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Hi Everyone,
I am trying to run the riverplume1 test case with passive tracers. The test case riverplume1 runs well (header file:riverplume1.h, input file:ocean_estuary_test.in). And then, I added one passive tracer in ocean_estuary_test.in, and added #define T_PASSIVE and #define ANA_SPFLUX in the header file. I just gave a constant value of surface tracer flux in the ANA_SPFLUX.
My simulation is compiling without any trouble but when I am running the executable this message appears: "READ_PHYPAR - could not find input file: ocean_ini.nc"
Does anybody have a clue how to solve this?
Thanks.
I am trying to run the riverplume1 test case with passive tracers. The test case riverplume1 runs well (header file:riverplume1.h, input file:ocean_estuary_test.in). And then, I added one passive tracer in ocean_estuary_test.in, and added #define T_PASSIVE and #define ANA_SPFLUX in the header file. I just gave a constant value of surface tracer flux in the ANA_SPFLUX.
My simulation is compiling without any trouble but when I am running the executable this message appears: "READ_PHYPAR - could not find input file: ocean_ini.nc"
Does anybody have a clue how to solve this?
Thanks.
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
did you provide the initial field for the passive tracer?
if not, you want to modify Functionals/ana_passive.h
Jacopo
if not, you want to modify Functionals/ana_passive.h
Jacopo
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Thanks. I didn't provide an initial field for the passive tracer except giving a constant value to the variable 'stflx' in the ana_stflux.h file as below."
!
!-----------------------------------------------------------------------
! Set kinematic surface flux (T m/s) of passive tracers, if any.
!-----------------------------------------------------------------------
!
ELSE
DO j=JstrR,JendR
DO i=IstrR,IendR
stflx(i,j,itrc)=1/86400_r8
#ifdef TL_IOMS
tl_stflx(i,j,itrc)=0.0_r8
#endif
END DO
END DO
END IF
"
!
!-----------------------------------------------------------------------
! Set kinematic surface flux (T m/s) of passive tracers, if any.
!-----------------------------------------------------------------------
!
ELSE
DO j=JstrR,JendR
DO i=IstrR,IendR
stflx(i,j,itrc)=1/86400_r8
#ifdef TL_IOMS
tl_stflx(i,j,itrc)=0.0_r8
#endif
END DO
END DO
END IF
"
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Do I need to provide another initial tracer field other than that in the ana_stflux.h?
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
This is for the surface boundary conditions. You need to provide the initial field of the passive tracer, whether it is zero or something elsefchen wrote:Thanks. I didn't provide an initial field for the passive tracer except giving a constant value to the variable 'stflx' in the ana_stflux.h file as below."
!
!-----------------------------------------------------------------------
! Set kinematic surface flux (T m/s) of passive tracers, if any.
!-----------------------------------------------------------------------
!
"
define ANA_PASSIVE in the include file and modify Functionals/ana_passive.h
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Thanks a lot. That helps. The test case is running now. But I want to make sure that I am doing the correct modification.
I #defined ana_passive.h in the header file and modified the part in ana_passive.h as below
!-----------------------------------------------------------------------
! Set analytical initial conditions for passive inert tracers.
!-----------------------------------------------------------------------
!
#if defined MY_OPTION
DO ip=1,NPT
itrc=inert(ip)
DO k=1,N(ng)
DO j=JstrR,JendR
DO i=IstrR,IendR
t(i,j,k,1,itrc)=0.0
t(i,j,k,2,itrc)=t(i,j,k,1,itrc)
END DO
END DO
END DO
END DO
#else
ana_passive.h: no values provided for t(:,:,:,1,inert(itrc))
#endif
"
But when I compile it, the error message was 'ana_passive.h: no values provided for t(:,:,:,1,inert(itrc))
'
I thought that was because I didn't #defind MY_OPTION in the header file, and then I defined that and now compiling is OK, and the model is running.
AM I doing the right thing, that I defined MY_OPTION in the header file?
I #defined ana_passive.h in the header file and modified the part in ana_passive.h as below
!-----------------------------------------------------------------------
! Set analytical initial conditions for passive inert tracers.
!-----------------------------------------------------------------------
!
#if defined MY_OPTION
DO ip=1,NPT
itrc=inert(ip)
DO k=1,N(ng)
DO j=JstrR,JendR
DO i=IstrR,IendR
t(i,j,k,1,itrc)=0.0
t(i,j,k,2,itrc)=t(i,j,k,1,itrc)
END DO
END DO
END DO
END DO
#else
ana_passive.h: no values provided for t(:,:,:,1,inert(itrc))
#endif
"
But when I compile it, the error message was 'ana_passive.h: no values provided for t(:,:,:,1,inert(itrc))
'
I thought that was because I didn't #defind MY_OPTION in the header file, and then I defined that and now compiling is OK, and the model is running.
AM I doing the right thing, that I defined MY_OPTION in the header file?
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Yes. However, sometimes, it is safer if you replace the cpp def MY_OPTION with the name of your application (RIVERTEST1?) in order to prevent having unwanted pieces of code used because MY_OPTION could be used somewhere else.
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Thanks. The model run completed. But in the output file, ocean_his.nc, the passive tracer concentration is zero everywhere all the time.The initial condition is zero everywhere defined in ana_passive.h, and the tracer is added into the field at a constant rate through surface flux, in ana_stflux. The variable stflx is 1 T m/s.
Any clue why the tracer didn't go in?
Thanks in advance.
Any clue why the tracer didn't go in?
Thanks in advance.
Code: Select all
!
!-----------------------------------------------------------------------
! Set kinematic surface flux (T m/s) of passive tracers, if any.
!-----------------------------------------------------------------------
!
ELSE
DO j=JstrR,JendR
DO i=IstrR,IendR
stflx(i,j,itrc)=1.0_r8
#ifdef TL_IOMS
tl_stflx(i,j,itrc)=0.0_r8
#endif
END DO
END DO
END IF
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
What vertical diffusivity are you using? You are probably using the Akt from the salinity (if any).
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Thanks for the comments. I checked the input file I used 'ocean_estuary_test.in', and found that. There is no another Akt for passive tracers defined. Should I define another one for the passive tracer?
Thanks.
Thanks.
Code: Select all
! Vertical mixing coefficients for active tracers: [1:NAT+NPT,Ngrids]
AKT_BAK == 5.0d-6 5.0d-6 ! m2/s
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
No, don't bother. To save on storage, Akt is dimensioned by the number of active tracers. All other tracers use the values for salt. Have you set a vertical mixing scheme or are you using the background value everywhere?
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
Thanks. For the mixing, I am using MY mixing scheme. But I didn't define any options for it. The code I have in the header file for mixing is below.
Code: Select all
#define MY25_MIXING
#define N2S2_HORAVG
Re: "READ_PHYPAR - could not find input file:ocean_ini.nc" Err
I am not sure this is related or not, but the salinity results in the output file are 30 everywhere all the time. I also looked at the output with original riverplume1.h and ocean_estuary_test.in, the salinity is 30 everywhere when I didn't modify any of the files. Is this correct for this riverplume test case? Because I thought the salinity would change within the river plume.
If the model doesn't calculate salinity change for this case, probably the passive tracer will be the same as the salinity is.
Thanks in advance.
If the model doesn't calculate salinity change for this case, probably the passive tracer will be the same as the salinity is.
Thanks in advance.