Search found 41 matches

by zhangtianhao
Wed Jun 17, 2020 12:34 pm
Forum: ROMS Discussion
Topic: Boundary condition problems
Replies: 4
Views: 211

Re: Boundary condition problems

Thanks, Kate and Wilkin, To sum up for other users, ROMS can calculate uvbar by uv values in ini_fields.F (if not define PERFACT_START). So it is not necessary to input uvbar in init file. However, Fla, Shc, (and Red?) boundary condition requir for uvbar, so we have to calculate uvbar by uv_barotrop...
by zhangtianhao
Tue Jun 16, 2020 7:24 am
Forum: ROMS Discussion
Topic: BODYFORCE-transform acceleration to stress
Replies: 2
Views: 216

Re: BODYFORCE-transform acceleration to stress

There is a different approach to imposing an effective horizontal acceleration that is uniform throughout the vertical water column. This is to introduce a horizontal gradient in the air pressure (e.g. within ana_pair.h) and impose this force via #define ATM_PRESS. I use this method to impose a tim...
by zhangtianhao
Tue Jun 16, 2020 7:19 am
Forum: ROMS Discussion
Topic: Boundary condition problems
Replies: 4
Views: 211

Boundary condition problems

Hi forum, I met some problems when dealing with boundary conditions: LBC(isFsur) == Clo Che Clo Che ! free-surface LBC(isUbar) == Clo Shc Clo Shc ! 2D U-momentum LBC(isVbar) == Clo Shc Clo Shc ! 2D V-momentum LBC(isUvel) == Clo RadNud Clo RadNud ! 3D U-momentum LBC(isVvel) == Clo RadNud Clo RadNud !...
by zhangtianhao
Sun Jun 14, 2020 4:50 pm
Forum: ROMS Discussion
Topic: BODYFORCE-transform acceleration to stress
Replies: 2
Views: 216

BODYFORCE-transform acceleration to stress

Hi there, When using BODYFORCE, we can apply the surface stress to the whole water column. And BODYFORCE requirs sustr and svstr which can be set in smflux.F. However, as for me, I only want to set a varying horizontal acceration in the whole water column, so I don't have sustr/svstr data but I obta...
by zhangtianhao
Sun Jun 14, 2020 4:37 pm
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

I see your point. Then you might have to code some workaround, like ... # if !defined BODYFORCE ! the original code ... DO i=Istr,Iend cff=om_v(i,j)*on_v(i,j) cff1= svstr(i,j)*cff cff2=-bvstr(i,j)*cff rvfrc(i,j)=rvfrc(i,j)+cff1+cff2 ... #else ! the code you want, whatever that is ... But before you...
by zhangtianhao
Sun Jun 14, 2020 11:40 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

cff1= 0.0_r8 cff2= 0.0_r8 rufrc(i,j)=rufrc(i,j)+cff1+cff2 I can't find that code anywhere in my version of rhs3d.F. Sorry, I don't make myself clear, Firstly , it seems that the miximun value of levbfrc is 1 but not 0, Secondly , Line 2170 in rhs3d.F: # ifndef BODYFORCE DO i=Istr,Iend cff=om_v(i,j)...
by zhangtianhao
Fri Jun 12, 2020 4:41 pm
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

(But I modify sbstr code, I don't want to transform it to bodyforce, it is still used in 2d equation), as shown below: All you need to do to prevent the bottom stress also being applied as a bodyforce is make LEVBFRC = 0 in roms.in: !-----------------------------------------------------------------...
by zhangtianhao
Thu Jun 11, 2020 6:46 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

Thanks for all of your advice, I use BODYFORCE now, and I correct the τ unit. But ROMS still blowed up. In smflx.h , I set sustr=a*h , (a means acceleration, h means depth, unit=m/s2*m), so the sustr has kinetic unit, as shown below: open(55,file='/ubuntu/COAWST/Projects/acceleration/EW01.txt',statu...
by zhangtianhao
Wed Jun 10, 2020 2:47 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

Where ROMS expresses anything in kinematic units (per unit mass), such as converting stress to friction velocity (tau/rho0), or heat flux (W/m2) to degrees meters/s (Hf/(Cp*rho0) in the surface temperature boundary condition, it always uses the constant parameter rho0. Likewise, to calculate Brunt-...
by zhangtianhao
Tue Jun 09, 2020 3:45 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

Are you trying to change ROMS equation of state? The definition of in situ density anomaly or potential density anomaly is that a 1000 kg m-3 value is subtracted to the density. The in situ density anomaly, as a field, is only used in ROMS in the pressure gradient algorithm where its value is not e...
by zhangtianhao
Mon Jun 08, 2020 10:43 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

Hi all,

I found that when I set a (rho+1000)*acceleration term in the equation, ROMS showed rho speed trouble, I wonder that how to check this problem.

Thanks
by zhangtianhao
Fri Jun 05, 2020 7:04 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

Re: the defination of density rho

The variable "rho" in the model is insitu density anomaly. You add rho0 to it to get full density. Note that rho0 may or may not be 1000. Thanks, Kate, rho0 equals 1025 in my case, but I find in rho_eos.F file: den(i,k)=den1(i,k)*bulk(i,k)*cff den(i,k)=den(i,k)-1000.0_r8 It seems that in this code ...
by zhangtianhao
Fri Jun 05, 2020 3:57 am
Forum: ROMS Discussion
Topic: the defination of density rho
Replies: 16
Views: 1018

the defination of density rho

Hi there, I have a problem and maybe it's easy to you: I want to modify the code and use the density of seawater in fourmula, should I use rho(:,:,:)+1000 or just rho? I wonder that if the rho is the density anomaly :D I don't find the defination of in forum. BTW, I want to use the density to repres...
by zhangtianhao
Fri Feb 21, 2020 11:47 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

OK, I think I get it: So the steps would be (following what you said): Using GridBuilder: Add enough depth to your bathymetry so that everything that you expect to get wet is under water and load it into GridBuilder Use the new 0 contour as your coast line (let GridBuilder use topography to set mas...
by zhangtianhao
Tue Feb 18, 2020 1:29 pm
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

rx0 can become very large if the depth changes sign within the unmasked part of the grid - I think the topography might not match up quite with your coastline after smoothing and raising it, This may have caused land to be exposed near the coast in unmasked cells which is not good and may be causin...
by zhangtianhao
Sat Feb 15, 2020 8:16 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

Metrics information for Grid 01: =============================== Minimum X-grid spacing, DXmin = 1.00000000E+17 km Maximum X-grid spacing, DXmax = Infinity km Minimum Y-grid spacing, DYmin = 1.00000000E+17 km Maximum Y-grid spacing, DYmax = Infinity km Minimum Z-grid spacing, DZmin = -5.47066471E+03...
by zhangtianhao
Sat Feb 15, 2020 8:13 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

clear; modis3='C:\Users\xzz\Desktop\ROMS.nc'; ncdisp(modis3); ncid3=netcdf.open(modis3); %1) Enter name of netcdf grid file to be created. grid_file='ROMS_new.nc'; %2) Obtain grid information. LP = 178; MP = 281; L = LP-1; M = MP-1; xi_psi = L; xi_rho = LP; xi_u = L; xi_v = LP; eta_psi = M; eta_rho ...
by zhangtianhao
Sat Feb 15, 2020 8:12 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

I think the problem is the bathymetric filtering. The positive and negative adjustment filters only work on wet cells and rx0 is only calculated on wet cells - if you do filtering first then alter the mask it may tag previously dry cells as wet - the topography of these previously dry cells has not...
by zhangtianhao
Fri Feb 14, 2020 1:52 pm
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

I think the problem is the bathymetric filtering. The positive and negative adjustment filters only work on wet cells and rx0 is only calculated on wet cells - if you do filtering first then alter the mask it may tag previously dry cells as wet - the topography of these previously dry cells has not...
by zhangtianhao
Thu Feb 13, 2020 3:42 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

Are you using GSHHG coastlines to generate the mask? Under the Mask Settings menu choose "Use GSHHG Coastlines (More Accurate)" - default is "Use Topography (Faster)" which is very useful for quickly placing a grid and getting the resolution correct. Once you are happy with the basic grid I suggest...
by zhangtianhao
Wed Feb 12, 2020 11:56 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

I think an old version of GridBuilder had an issue with resetting depths with land masks to 0m when exporting to a grid nc file regardless of users intent but that was fixed a while ago; you can set the min depth to anything on export. I am working with version 1.2 of GridBuilder and I am able to c...
by zhangtianhao
Fri Jan 17, 2020 11:34 am
Forum: ROMS Discussion
Topic: Wave absorption boundary condition
Replies: 6
Views: 622

Re: Wave absorption boundary condition

Maybe you should change tke boundary to gra

Hoty

2020-01-17
by zhangtianhao
Thu Jan 16, 2020 11:40 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

Thanks for suggestions from Kate, johnluick and jcwarner, that's really useful. Firstly, I read this papaer https://darchive.mblwhoilibrary.org/bitstream/handle/1912/6207/1-s2.0-S0098300413001362-main.pdf?sequence=1. I found I misunderstood some parameters. I confused land/sea mask with wer/dry mask...
by zhangtianhao
Wed Jan 15, 2020 11:47 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

-changing hmin to zero is basically removing all the 'land' parts of your grid, so that removed your wet dry problem. - an hmin of -100 means that you have a small hill about 100 m above sea level. that might be troubles for roms. so maybe you could set landmask=0 for cells that are above, lets say...
by zhangtianhao
Tue Jan 14, 2020 8:29 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

Re: WET_DRY and Gridbuilder Problem

What I do these 2 days: (1)My COAWST version does not need to define limit_bstress. (2)I found that many people's model blowed up because of large T,S and velocities. So I checked T and S , they seemed also fine before blowing up, the same as uvw. (3)My model blowed up with kinetic_enrg, poten_enrg ...
by zhangtianhao
Sat Jan 11, 2020 7:15 am
Forum: ROMS Bugs
Topic: WET_DRY and Gridbuilder Problem
Replies: 21
Views: 1661

WET_DRY and Gridbuilder Problem

Hi there, I met a problem with WET_DRY option . When I use WET_DRY to run a simple coastal ocean case, ROMS blows up quickly (19 steps, 1.9s). I set DCRIT=0.1m. Notice: I use Gridbuilder and set h of land area as negative value (though people usually set all h>0), for example,-15m. And rx0 and rx1 i...
by zhangtianhao
Thu Jan 09, 2020 12:29 pm
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

With WET_DRY, zeta in the land area is always some DCRIT above the land, nothing to worry about. It should not be changing in time. Have you tried fussing with your timestep? I changed dt from 0.1 to 0.05, and it delays the blow-up time from 1.9s to 44s . I am keeping trying. Here is the complete r...
by zhangtianhao
Thu Jan 09, 2020 11:31 am
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

Hi all, Now I can run this case but it blows up after several steps. And it's weird that: usually results become large and model blows up, but this time results suddenly become NaN . So I checked my forcing file, but there are no NaN in it. One thing I noticed: I turn on WET_DRY, and I set depth of ...
by zhangtianhao
Thu Jan 09, 2020 6:26 am
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

The Flather condition requires values from outside the domain for both ubar/vbar and zeta. You can provide them via ANA_xxx options or you can specify a file: NBCFILES == 1 ! number of boundary files BRYNAME == /center1/AKWATERS/kshedstrom/Arctic/Files/Arctic4_bdry_1980_SODA3.3.1.nc | /center1/AKWA...
by zhangtianhao
Wed Jan 08, 2020 2:47 pm
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

So you think you have already remapped the thing to your grid. You have to have the dimensions *exactly* right or else ROMS will decide to remap for you. Some words on grid sizes. If you want powers of two or three in the grid for your decompositions without needing leftovers, you need Lm, Mm to ha...
by zhangtianhao
Wed Jan 08, 2020 1:18 pm
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

So you think you have already remapped the thing to your grid. You have to have the dimensions *exactly* right or else ROMS will decide to remap for you. Some words on grid sizes. If you want powers of two or three in the grid for your decompositions without needing leftovers, you need Lm, Mm to ha...
by zhangtianhao
Wed Jan 08, 2020 11:59 am
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Re: Index '282' of dimension 2 of array 'finp' above upper bound of 281

at /home/ubuntu/app/COAWST_V3.2/Build/get_data.f90:104 I suspect you are reading an atmospheric field here? The model wouldn't try to interpolate from your grid file, assuming all those fields are already on your grid. So, what atmospheric fields are you reading and are you expecting ROMS to do the...
by zhangtianhao
Wed Jan 08, 2020 8:54 am
Forum: ROMS Bugs
Topic: Index '282' of dimension 2 of array 'finp' above upper bound of 281
Replies: 12
Views: 621

Index '282' of dimension 2 of array 'finp' above upper bound of 281

Hi there, I met some problems when I ran a simple case:Index '282' of dimension 2 of array 'finp' above upper bound of 281. I checked interpolate.f90 and considered ‘finp’ may be related to grid file. Then I check my grid file, but the dimensions of the whole varibales are 281, no 282 appeared(my di...
by zhangtianhao
Sat Sep 21, 2019 6:36 am
Forum: ROMS Discussion
Topic: Some confusion about boundary condition
Replies: 4
Views: 414

Re: Some confusion about boundary condition

kate wrote:If any part of a boundary is open, you have to set the whole boundary to open. The land masking will take care of the rest. Your north can be closed. If you set it to open, no harm done, but you'll be asking ROMS to do extra work of reading fields (or computing analytic fields).
Thanks, Kate.
by zhangtianhao
Fri Sep 20, 2019 12:50 pm
Forum: ROMS Discussion
Topic: Some confusion about boundary condition
Replies: 4
Views: 414

Re: Some confusion about boundary condition

Yes, ROMS is expecting ubar, vbar in the initial and boundary files. It will ensure consistency between baroclinic and barotropic flows during initialization and after every timestep, but the boundary files ought to be generated in such a way that the u and ubar fields are consistent. If you are do...
by zhangtianhao
Thu Sep 19, 2019 8:22 am
Forum: ROMS Discussion
Topic: Some confusion about boundary condition
Replies: 4
Views: 414

Some confusion about boundary condition

Hi everyone, I have some confusion about my boundary condition. I use Cha for zeta boundary, Fla for 2D-momentum boundary and RADNUD for 3D-momentum boundary.(My region is in South China Sea) 1)I wonder that if I must input the ubar and vbar in the boundary ncfile or in the init ncfile ? 2)And if I ...
by zhangtianhao
Thu May 24, 2018 1:20 pm
Forum: ROMS Discussion
Topic: My constant wind-induced case seems strange
Replies: 4
Views: 1121

Re: My constant wind-induced case seems strange

THETA_S == 8.0d0 ! surface stretching parameter THETA_B == 0.5d0 ! bottom stretching parameter TCLINE == 20.0d0 ! critical depth (m) use something like Gout=get_roms_grid('ocean_his.nc',tidx); this will give you a field Gout.s_rho that you can avg to get the vertical locations of your grid. how did...
by zhangtianhao
Tue May 22, 2018 8:04 am
Forum: ROMS Discussion
Topic: My constant wind-induced case seems strange
Replies: 4
Views: 1121

Re: My constant wind-induced case seems strange

I think the result should be like this:
( I draw this picture by the analytical formula)
by zhangtianhao
Tue May 22, 2018 7:56 am
Forum: ROMS Discussion
Topic: My constant wind-induced case seems strange
Replies: 4
Views: 1121

Re: My constant wind-induced case seems strange

Init file : all values = 0 Forcing file : Uwind = 8m/s Here is my in.file: !============================================================================== ! ! Application title. TITLE = POOL ! C-preprocessing Flag. MyAppCPP = POOL ! Input variable information file name. This file needs to be process...
by zhangtianhao
Tue May 22, 2018 7:52 am
Forum: ROMS Discussion
Topic: My constant wind-induced case seems strange
Replies: 4
Views: 1121

My constant wind-induced case seems strange

I set a closed boundary pool(50m*50m), △x=1m, △t=0.2s. There is just one forcing condition, a constant Uwind = 8m/s. But my result looks so strange. (I think it should be a smooth parabola) Here is my result.png. It looks unnatural. The x-coordinate is u(m/s) ,and the y-coordinate is s_rho. I just w...