U-wind direction question

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
sextant1980
Posts: 4
Joined: Thu Jun 05, 2014 5:03 pm
Location: Florida Atlantic University

U-wind direction question

#1 Unread post by sextant1980 »

Hi guys,

I never had to deal with curvilinear grid before until now. When I interpolate U-wind and V-wind component onto the model grid in order to generate surface forcing file, if the model grid is a curvilinear grid (not east-west and south-north oriented), then the U-wind and V-wind are NOT true east-west and south-north component of the wind vector, right?

In another word, I have to use the angle in grid file to calculate the component at XI direction as the U-wind value, and the component at eta direction as V-wind value, correct?

Thank you very much for taking the time to answer my question!

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: U-wind direction question

#2 Unread post by kate »

Yes, that is all true. What is the source of your winds? If they are on a rectangular grid aligned NS and EW, then ROMS can do the interpolation and rotation for you.

sextant1980
Posts: 4
Joined: Thu Jun 05, 2014 5:03 pm
Location: Florida Atlantic University

Re: U-wind direction question

#3 Unread post by sextant1980 »

kate wrote:Yes, that is all true. What is the source of your winds? If they are on a rectangular grid aligned NS and EW, then ROMS can do the interpolation and rotation for you.
Hi Kate,

My wind source is from North America Regional Reanalysis, so they are indeed on rectangular grid aligned NS and EW. How do I set it up to make ROMS do the interpolation and rotation automatically? Should I set it up when I generate the forcing nc file? If yes, could you post a sample of the cdl file for wind forcing?

My wind forcing is like this:
dimensions:
xi_u = 641 ;
eta_u = 562 ;
xi_v = 642 ;
eta_v = 561 ;
xi_rho = 642 ;
eta_rho = 562 ;
xi_psi = 641 ;
eta_psi = 561 ;
sms_time = UNLIMITED ; // (0 currently)

variables:
float sms_time(sms_time) ;
sms_time:long_name = "surface momentum stress time" ;
sms_time:units = "days" ;
sms_time:cycle_length = 731. ;
float Uwind(sms_time,eta_rho,xi_rho) ;
Uwind:long_name = "surface u-wind component" ;
Uwind:units = "meter second-1" ;
float Vwind(sms_time,eta_rho,xi_rho) ;
Vwind:long_name = "surface v-wind component" ;
Vwind:units = "meter second-1" ;

How do I change it in order for roms to do the interpolation and rotation?
Thanks Kate!

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: U-wind direction question

#4 Unread post by kate »

Here's the CDL of a global winds file I use:

Code: Select all

dimensions:
	lon = 540 ;
	lat = 361 ;
	time = UNLIMITED ; // (2920 currently)
variables:
	double lon(lon) ;
		lon:units = "degrees_east" ;
		lon:valid_min = 0. ;
		lon:valid_max = 359.333333333333 ;
		lon:long_name = "longitude" ;
	double lat(lat) ;
		lat:units = "degrees_north" ;
		lat:valid_min = -90. ;
		lat:valid_max = 90. ;
		lat:long_name = "latitude" ;
	double time(time) ;
		time:units = "days since 1900-01-01 00:00:00" ;
		time:valid_min = 28854.0625 ;
		time:valid_max = 29218.9375 ;
		time:calendar = "LEAP" ;
	float Uwind(time, lat, lon) ;
		Uwind:long_name = "Eastward wind at 2 m above the displacement height" ;
		Uwind:units = "m/s" ;
		Uwind:coordinates = "lon lat" ;
		Uwind:time = "time" ;
		Uwind:_FillValue = 1.e+15f ;
		Uwind:missing_value = 1.e+15f ;
		Uwind:valid_range = -19.90967f, 17.66533f ;
I believe you need the coordinates attribute and the time attribute. Also, the grid dimensions of the winds have to be different from the grid dimensions of your ROMS grid. That is, if your global forcing is 360x180 in size, don't build a grid of that same size.

You can always check the resulting wind stress as computed by ROMS to make sure things are looking sensible.

Post Reply