Dear all,
I would like some help from ROMS users to resolve a problem that I have for my custom ROMS run. Hope someone could help me resolve the problem.
I run a barotropic current model for testing (by intel fortran compiler 10.1 for linux). I used tide (tidal elevation and currents) as OBC (using OSU OTPS tidal prediction package) and used wind stress and air pressure from NOAA as forcing input data. No climatology data.
When I run my custom ROMS model, I've got the following error.
forrtl: error (65): floating invalid
I played with my CPPDEFS setting and checked time settings and all forcing files, but I still have this error. Then I found out that when I changed my OBC as wall boundary and unchecked tide in my CPPDEFS, then the model run without any errors. So it seems that the model cannot read or process my OBC properly. But I don't know why (Might be I did not turn on some CPP options?).
I attach my two ROMS logs with error and without error (no OBC)as well as netcdf output of my tidal forcing files and my cppdefs.
I would appreciate it if someone could point out the problem and help me solve it.
Thanks in advance.
Sincerely,
DJ
Daijiro (DJ) Kobashi, Ph.D.
Griffith University
floating invalid error due to incorrect OBC?
floating invalid error due to incorrect OBC?
 Attachments

 seq_test.h
 CPPDEFS.h
 (2.03 KiB) Downloaded 93 times

 roms_tides.log
 Netcdf output of my tidal forcing
 (2.79 KiB) Downloaded 82 times

 roms_out_error.log
 log of ROMS run with error
 (12.49 KiB) Downloaded 83 times

 roms_out_no_OBC.log
 log or ROMS run without error (extracted)
 (15.12 KiB) Downloaded 76 times
Re: floating invalid error due to incorrect OBC?
Comparing your bad log file to a good one of mine, it appears to have read most of the tidal fields, but not the minimum tidal current, ellipse minor axis. You can probably confirm that by checking line 119 of get_idata.f90:
Have you run ncview on the tidal input file and looked at that field? How did you produce that netcdf tides file?
Code: Select all
GET_2DFLD  tidal current phase angle
(Min = 0.00000000E+00 Max = 6.28317112E+00)
GET_2DFLD  maximum tidal current, ellipse major axis
(Min = 0.00000000E+00 Max = 1.74164804E+00)
forrtl: error (65): floating invalid
Image PC Routine Line Source
oceanG 081D7C77 nf_fread3d_mod_mp 205 nf_fread3d.f90
oceanG 0816E6F9 get_2dfld_ 415 get_2dfld.f90
oceanG 0810B26C get_idata_ 119 get_idata.f90
oceanG 0804C7BF initial_ 204 initial.f90
oceanG 0804A779 ocean_control_mod 94 ocean_control.f90
oceanG 0804A400 MAIN__ 75 master.f90
oceanG 0804A344 Unknown Unknown Unknown
libc.so.6 B75E0BD6 Unknown Unknown Unknown
oceanG 0804A281 Unknown Unknown Unknown
Aborted
Re: floating invalid error due to incorrect OBC?
Thanks for your input, Kate.
I used OSU tidal prediction software (matlab version. otps2frc_v3.m).
I followed the steps articulated on the ROMS tidal forcing page.
(https://www.myroms.org/wiki/index.php/Tidal_Forcing) and run the following script.
t=datenum(2007,1,1);
tpred=datenum(2008,1,1);
base_dir='../work_dir/';
gfile=[base_dir,'roms_grd.nc'];
tideout=[base_dir,'roms_tides_frc.nc'];
otps2frc_v3(gfile,t,tpred,tideout,'DATA/Model_tpxo7.2')
I checked the netcdf file using ncview as well as snctools on minimum currents (tide_Cmin) in particular those along the open boundaries as I understand ROMS only uses tidal data along the boundaries, not for the entire domain. The boundary data looked fine by me. No NaNs on the boundaries (so all data on the boundary are floating points, I assume).
Then when I played with this OSU tide software, I found out something interesting or strange.
I initially used 8 tidal constituents (m2, s2, n2, k2, k1, o1, p1, q1) resulting in the error. I reduced them to 4 major constituents, namely m2, s2, k1, o1. Then the model run with no errors.....
So my conclusion so far is that increase in the number of tidal constituents gave me the error... does not make sense, though.
Also, whether the error came from ROMS or the tide software is not clear. So still don't know why the error occurred. Any ideas? The model is now running, but I need to know what caused this problem for future ROMS applications. Maybe I should ask the software developer(s) of the OSU tidal prediction package.
Thanks,
Kind regards,
DJ
Daijiro Kobashi, Ph.D.
Oceanographer
Griffith University
I used OSU tidal prediction software (matlab version. otps2frc_v3.m).
I followed the steps articulated on the ROMS tidal forcing page.
(https://www.myroms.org/wiki/index.php/Tidal_Forcing) and run the following script.
t=datenum(2007,1,1);
tpred=datenum(2008,1,1);
base_dir='../work_dir/';
gfile=[base_dir,'roms_grd.nc'];
tideout=[base_dir,'roms_tides_frc.nc'];
otps2frc_v3(gfile,t,tpred,tideout,'DATA/Model_tpxo7.2')
I checked the netcdf file using ncview as well as snctools on minimum currents (tide_Cmin) in particular those along the open boundaries as I understand ROMS only uses tidal data along the boundaries, not for the entire domain. The boundary data looked fine by me. No NaNs on the boundaries (so all data on the boundary are floating points, I assume).
Then when I played with this OSU tide software, I found out something interesting or strange.
I initially used 8 tidal constituents (m2, s2, n2, k2, k1, o1, p1, q1) resulting in the error. I reduced them to 4 major constituents, namely m2, s2, k1, o1. Then the model run with no errors.....
So my conclusion so far is that increase in the number of tidal constituents gave me the error... does not make sense, though.
Also, whether the error came from ROMS or the tide software is not clear. So still don't know why the error occurred. Any ideas? The model is now running, but I need to know what caused this problem for future ROMS applications. Maybe I should ask the software developer(s) of the OSU tidal prediction package.
Thanks,
Kind regards,
DJ
Daijiro Kobashi, Ph.D.
Oceanographer
Griffith University
Re: floating invalid error due to incorrect OBC?
ROMS indeed only uses the boundary values, but it reads the entire 2D fields and computes the tides for the entire 2D field (as pointed out by Sasha in another thread).
Re: floating invalid error due to incorrect OBC? (SOLVED)
Yep. I saw the thread discussing OBC tidal forcing too.
Following your comment, I wrote a script to check all grid data for all constituents and found that a few grids contained NaNs for Q1 constituent.
As Q1 tide does affect little to my domain so I took it out and the model run without the error.
Good to know what the problem was although I am not still sure what caused the problem. I thought the OSU tidal package interpolate data for my ROMS grid and use an alternative coefficient if a tidal coefficient does not exist. But I think this problem can easily be fixed by interpolating the NaNs grids.
Thanks Kate for your input.
I appreciate your help.
Kind regards,
DJ
Following your comment, I wrote a script to check all grid data for all constituents and found that a few grids contained NaNs for Q1 constituent.
As Q1 tide does affect little to my domain so I took it out and the model run without the error.
Good to know what the problem was although I am not still sure what caused the problem. I thought the OSU tidal package interpolate data for my ROMS grid and use an alternative coefficient if a tidal coefficient does not exist. But I think this problem can easily be fixed by interpolating the NaNs grids.
Thanks Kate for your input.
I appreciate your help.
Kind regards,
DJ