Hi everyone, 
I am working on adding some processes into biofennel, in order to do that I wanted to practice in something simple like hypoxia_srm. The hypoxia_srm requires 3 names respiration, idResR, ResRate. 
The respiration is in ana_respiration.h, get_data.F, hypoxia_srm.h, set_data.F, varinfo.dat, mod_ocean.F
The idResR is in hypoxia_srm_mod.h, hypoxia_srm_var.h, set_data.F, and varinfo.dat
The ResRate in the following files: ana_respiration.h, hypoxia_srw_wrt.h, hypoxia_srm_mod.h, hypoxia_srm.in, hypoxia_srm_inp.h, and hypoxia_srm_def.h
Let's say I wanted to add a variable called kProduction, idProd, ProRate to those respective files. ROMS compiles that no problem but then when I try to run it I get the following: 
NLM: GET_STATE - Reading state initial conditions,                       2015-05-01 00:00:00.00
                   (Grid 01, t = 5599.0000, File: ini_newHypoxia.nc, Rec=0001, Index=1)
                - free-surface
                   (Min =  0.00000000E+00 Max =  0.00000000E+00)
                - vertically integrated u-momentum component
                   (Min =  0.00000000E+00 Max =  0.00000000E+00)
                - vertically integrated v-momentum component
                   (Min =  0.00000000E+00 Max =  0.00000000E+00)
                - u-momentum component
                   (Min =  0.00000000E+00 Max =  0.00000000E+00)
                - v-momentum component
                   (Min =  0.00000000E+00 Max =  0.00000000E+00)
                - potential temperature
                   (Min =  1.50000000E+01 Max =  1.50000000E+01)
                - salinity
                   (Min =  3.40000000E+01 Max =  3.40000000E+01)
                - dissolved oxygen concentration
                   (Min =  2.00000000E+02 Max =  2.00000000E+02)
                - plant density
                   (Min =  9.00000000E-01 Max =  9.00000000E-01)
                - plant height
                   (Min =  1.30000000E+01 Max =  1.30000000E+01)
                - plant diameter
                   (Min =  3.00000000E-01 Max =  3.00000000E-01)
                - plant thickness
                   (Min =  3.00000000E-01 Max =  3.00000000E-01)
    GET_3DFLD   - total respiration rate,                          2015-05-01 00:00:00.00
                   (Grid=01, Rec=0000001, Index=1, File: prod_forcing.nc)
                   (Tmin=       5599.0000 Tmax=       5690.0000)      t =       5599.0000
                   (Min =  7.62675007E-01 Max =  7.92000000E+02)
 INQUIRY     - unable to find requested variable: 
               in file:
               /home/mf99274/COAWST_sap2test/Projects/datasets/forcing/prod_forcing.nc
 Found Error: 02   Line: 404      Source: ROMS/Utility/inquiry.F
 Found Error: 02   Line: 130      Source: ROMS/Utility/get_3dfld.F
 Found Error: 02   Line: 1006     Source: ROMS/Nonlinear/get_data.F
 Found Error: 02   Line: 856      Source: ROMS/Nonlinear/initial.F
 Found Error: 02   Line: 200      Source: ROMS/Drivers/nl_ocean.h
...
 ROMS/TOMS - Input error ............. exit_flag:   2
 ERROR: Abnormal termination: NetCDF INPUT.
 REASON: No error 
The first thing I notice is that INQUIRY does not show the variable kProduction as a variable not found. My question is: Is there any other thing that I should have done? For example, adding +1 somewhere because of this variable addition such as in hypoxia_srm_mod.h? I have checked lowercase and uppercases for the new variable so it matches everywhere. I also literally copied the same thing as it has been done for the respiration variable. 
Any help is welcome!!
Best,
Matheus
			
			
									
									
						adding a new variable to hypoxia_srm
- 
				fagundesmo
- Posts: 51
- Joined: Wed Dec 03, 2014 1:46 am
- Location: University of Georgia
Re: adding a new variable to hypoxia_srm
Often, compiling with debug option leads to more informative error messages. Try that first.
			
			
									
									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
- arango
- Site Admin
- Posts: 1394
- Joined: Wed Feb 26, 2003 4:41 pm
- Location: DMCS, Rutgers University
- Contact:
Re: adding a new variable to hypoxia_srm
Perhaps, you didn't add the appropriate metadata and logic for the new variables. Nowadays, our version of ROMS uses varinfo.yaml instead of varinfo.dat.   I don't know if that change was incorporated into COAWST or the version you are using. But it may explain the issues that you are having.
			
			
									
									
						Re: adding a new variable to hypoxia_srm
Look at line 1006 in your get_data and see what variable it is trying to read.Found Error: 02 Line: 1006 Source: ROMS/Nonlinear/get_data.F
In mine (not COAWST) it's reading boundary conditions so yours must be quite different. Presumably, it's related to your modified setup.
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
- 
				fagundesmo
- Posts: 51
- Joined: Wed Dec 03, 2014 1:46 am
- Location: University of Georgia
Re: adding a new variable to hypoxia_srm
Hi everyone, 
Thank you!! I realized my mistake after you mentioned that it was related to metadata and get_data.F.
Best,
Matheus
			
			
									
									
						Thank you!! I realized my mistake after you mentioned that it was related to metadata and get_data.F.
Best,
Matheus

