A Grid value problem by Octant
A Grid value problem by Octant
Dear, all;
I made a grid with OCTANT and tried to run ROMS(version 448) without any force to check if the grid is working or not.
But Roms didn't run.
In the logfile, DXmax and DYmax were infinite, so i checked the grid values.
Values:f,h,mask_u,mask_v,mask_rho,mask_psi look fine.
But,I found lots of the same 9.9692e+036 values on masked cells of the others (angle,pm,pn,etc.).
Do the big values make trouble?
Please let me know how to fix it.
Thank you so much!
Don
PS. The error messages are as following.
Power filter parameters, Fgamma, gamma = 0.28400 0.00000
Minimum X-grid spacing, DXmin = 8.32171850E-02 km
Maximum X-grid spacing, DXmax = Infinity km
Minimum Y-grid spacing, DYmin = 8.15932920E-02 km
Maximum Y-grid spacing, DYmax = Infinity km
Minimum Z-grid spacing, DZmin = 2.00000000E-01 m
Maximum Z-grid spacing, DZmax = 7.37249366E+00 m
Minimum barotropic Courant Number = 5.10437379E-03
Maximum barotropic Courant Number = 4.63493059E-02
Maximum Coriolis Courant Number = 4.16000000E-04
Maximum grid stiffness ratios: rx0 = 6.746323E-01 (Beckmann and Haidvogel)
rx1 = 6.071691E+00 (Haney)
Initial basin volumes: TotVolume = 2.2712259514E+09 m3
MinVolume = 6.2605680036E+03 m3
MaxVolume = 7.2311815626E+05 m3
Max/Min = 1.1550360220E+02
NL ROMS/TOMS: started time-stepping: (Grid: 01 TimeSteps: 00000001 - 00000024)
STEP Day HH:MM:SS KINETIC_ENRG POTEN_ENRG TOTAL_ENRG NET_VOLUME
0 0 00:00:00 NaN NaN NaN Infinity
Elapsed CPU time (seconds):
Node # 0 CPU: 0.092
Node # 1 CPU: 0.369
Total: 0.461
Nonlinear model elapsed time profile:
Initialization ................................... 0.165 (35.7911 %)
Computation of global information integrals ...... 0.002 ( 0.4339 %)
2D/3D coupling, vertical metrics ................. 0.002 ( 0.4339 %)
Omega vertical velocity .......................... 0.001 ( 0.2170 %)
Equation of state for seawater ................... 0.002 ( 0.4339 %)
Total: 0.172 37.3098
Nonlinear model message Passage profile:
Message Passage: 2D halo exchanges ............... 0.005 ( 1.0848 %)
Message Passage: 3D halo exchanges ............... 0.004 ( 0.8676 %)
Message Passage: 4D halo exchanges ............... 0.001 ( 0.2170 %)
Message Passage: data broadcast .................. 0.192 (41.6486 %)
Message Passage: data reduction .................. 0.001 ( 0.2167 %)
Message Passage: data scattering.................. 0.014 ( 3.0367 %)
Total: 0.217 47.0714
All percentages are with respect to total time = 0.461
ROMS/TOMS - Output NetCDF summary for Grid 01:
Analytical header files used:
ROMS/Functionals/ana_btflux.h
ROMS/Functionals/ana_initial.h
ROMS/Functionals/ana_smflux.h
ROMS/Functionals/ana_stflux.h
ROMS/TOMS - Blows up ................ exit_flag: 1
MAIN: Abnormal termination: BLOWUP.
I made a grid with OCTANT and tried to run ROMS(version 448) without any force to check if the grid is working or not.
But Roms didn't run.
In the logfile, DXmax and DYmax were infinite, so i checked the grid values.
Values:f,h,mask_u,mask_v,mask_rho,mask_psi look fine.
But,I found lots of the same 9.9692e+036 values on masked cells of the others (angle,pm,pn,etc.).
Do the big values make trouble?
Please let me know how to fix it.
Thank you so much!
Don
PS. The error messages are as following.
Power filter parameters, Fgamma, gamma = 0.28400 0.00000
Minimum X-grid spacing, DXmin = 8.32171850E-02 km
Maximum X-grid spacing, DXmax = Infinity km
Minimum Y-grid spacing, DYmin = 8.15932920E-02 km
Maximum Y-grid spacing, DYmax = Infinity km
Minimum Z-grid spacing, DZmin = 2.00000000E-01 m
Maximum Z-grid spacing, DZmax = 7.37249366E+00 m
Minimum barotropic Courant Number = 5.10437379E-03
Maximum barotropic Courant Number = 4.63493059E-02
Maximum Coriolis Courant Number = 4.16000000E-04
Maximum grid stiffness ratios: rx0 = 6.746323E-01 (Beckmann and Haidvogel)
rx1 = 6.071691E+00 (Haney)
Initial basin volumes: TotVolume = 2.2712259514E+09 m3
MinVolume = 6.2605680036E+03 m3
MaxVolume = 7.2311815626E+05 m3
Max/Min = 1.1550360220E+02
NL ROMS/TOMS: started time-stepping: (Grid: 01 TimeSteps: 00000001 - 00000024)
STEP Day HH:MM:SS KINETIC_ENRG POTEN_ENRG TOTAL_ENRG NET_VOLUME
0 0 00:00:00 NaN NaN NaN Infinity
Elapsed CPU time (seconds):
Node # 0 CPU: 0.092
Node # 1 CPU: 0.369
Total: 0.461
Nonlinear model elapsed time profile:
Initialization ................................... 0.165 (35.7911 %)
Computation of global information integrals ...... 0.002 ( 0.4339 %)
2D/3D coupling, vertical metrics ................. 0.002 ( 0.4339 %)
Omega vertical velocity .......................... 0.001 ( 0.2170 %)
Equation of state for seawater ................... 0.002 ( 0.4339 %)
Total: 0.172 37.3098
Nonlinear model message Passage profile:
Message Passage: 2D halo exchanges ............... 0.005 ( 1.0848 %)
Message Passage: 3D halo exchanges ............... 0.004 ( 0.8676 %)
Message Passage: 4D halo exchanges ............... 0.001 ( 0.2170 %)
Message Passage: data broadcast .................. 0.192 (41.6486 %)
Message Passage: data reduction .................. 0.001 ( 0.2167 %)
Message Passage: data scattering.................. 0.014 ( 3.0367 %)
Total: 0.217 47.0714
All percentages are with respect to total time = 0.461
ROMS/TOMS - Output NetCDF summary for Grid 01:
Analytical header files used:
ROMS/Functionals/ana_btflux.h
ROMS/Functionals/ana_initial.h
ROMS/Functionals/ana_smflux.h
ROMS/Functionals/ana_stflux.h
ROMS/TOMS - Blows up ................ exit_flag: 1
MAIN: Abnormal termination: BLOWUP.
Re: A Grid value problem by Octant
Did you make a grid with only four corners or is this a more complicated shape? The complex shaped grids will need some help filling in the undefined parts of the domain. I'm sure it could be done in Python, but my Python assistant is on vacation right now.
Re: A Grid value problem by Octant
Dear, Kate;
Thank you so much!
Yes, I made a complicated grid with OCTANT python.
Actually, when I tested Roms with grid having four coners, same depth, and no masked area, it worked.
In my opinion, on complex domain or masked domain Python fills arbitrary numbers on masked grid when it output values(pm,pn,angle, etc) into nc file.
For example, in value pm=1/dx, activie domain pm values are ok but masked area has number 9.96921x10^36. Masked array value caused "Waring: devided by zero" and Python fill the big value.
Does it cause my problem?
I appreciate it again.
Sincerely yours,
Don
Thank you so much!
Yes, I made a complicated grid with OCTANT python.
Actually, when I tested Roms with grid having four coners, same depth, and no masked area, it worked.
In my opinion, on complex domain or masked domain Python fills arbitrary numbers on masked grid when it output values(pm,pn,angle, etc) into nc file.
For example, in value pm=1/dx, activie domain pm values are ok but masked area has number 9.96921x10^36. Masked array value caused "Waring: devided by zero" and Python fill the big value.
Does it cause my problem?
I appreciate it again.
Sincerely yours,
Don
Last edited by sdsjkj on Tue Dec 21, 2010 7:35 pm, edited 1 time in total.
Re: A Grid value problem by Octant
Yes, I expect that the masked area is causing trouble. ROMS is computing there, then multiplying by zero, but you need to have well-behaved values in the mask.
Re: A Grid value problem by Octant
Dear, Kate;
Thank you for your prompt answer.
Can I input 'zero' meaning Land onto the masked cells?
Best regards,
Don
Thank you for your prompt answer.
Can I input 'zero' meaning Land onto the masked cells?
Best regards,
Don
Last edited by sdsjkj on Tue Dec 21, 2010 7:36 pm, edited 1 time in total.
Re: A Grid value problem by Octant
Zero is a tricky number to use. I would pick something non-zero.
Re: A Grid value problem by Octant
Dear, Kate;
I appreciate it.
Best regards,
Don
I appreciate it.
Best regards,
Don
Re: A Grid value problem by Octant
Dear, Kate;
When I ran Roms with a grid which is generated with four corners, It ran.
Thank you again.
Now I am going to try with a complex domain filling some none zero number on the masked cells.
Best regards,
Don
When I ran Roms with a grid which is generated with four corners, It ran.
Thank you again.
Now I am going to try with a complex domain filling some none zero number on the masked cells.
Best regards,
Don
Re: A Grid value problem by Octant
I usually do something like this to fill in undefined values (assuming you use masked arrays for your variables):
Also, the minimum depth that you will use should be specified everywhere in the domain, not just in the unmasked portion.
Code: Select all
grd.dx = grd.dx.filled( grd.dx.mean() )
grd.dy = grd.dy.filled( grd.dy.mean() )
grd.dndx = grd.dndx.filled( grd.dndx.mean() )
grd.dmde = grd.dmde.filled( grd.dmde.mean() )
grd.angle = grd.angle.filled( grd.angle.mean() )
Re: A Grid value problem by Octant
Dear, Robert Hetland;
I appreciate it.
Happy new year!
Best regards,
Don
I appreciate it.
Happy new year!
Best regards,
Don