Running wrf 3dvar

Hi Mat,
I have problem in running 3dvar.When i run the script
./DA_Run_3DVAR.csh.
i get the message see below:
[root@drizzle run]# ./DA_Run_3DVAR.csh
unlimit: descriptors: Can’t remove limit

So i tried the following :

  1. I removed the “unlimit” in the script,i got this message

see below:

[root@drizzle run]# ./DA_Run_3DVAR.csh

Running script DA_Run_3DVAR

setenv: Too many arguments.
########################

  1. I use the “ulimit” in the script , i get

[root@drizzle run]# ./DA_Run_3DVAR.csh
/usr/bin/perl/ulimit: Not a directory.

Running script DA_Run_3DVAR

setenv: Too many arguments.
[root@drizzle run]#
#############################

Also i check the ulimit in the command line i got the msg
[root@drizzle run]# ulimit
unlimited:

So i wonder what is wrong,

Peter

Hi Peter,


Two different issues are happening. The ‘setenv’ error your getting occurs when you use spaces when setting a environment variable. (ex setenv PATH my path). My guess is that you have not edited the ‘DA_Run_3DVAR.csh’ and added the actual paths for WRF_DIR, DAT_DIR, and RUN_DIR (lines 68-70). I was unable to find anything in the documentation about needing to do this. I guess they assume you’d just know!

The problem with ‘unlimit’ is most likely caused by your administrator not letting users adjust the number of file descriptors available. What you really need to do is set the available stack size to a really large number, else your executable will seg fault. Try doing the following:

csh
limit
limit stacksize 1000m
limit

You should see the stack size be set to 1024000 kbytes. Once you have your stack size set large enough and have edited your run script, try running again (your edited version without the ‘unlimit’). If you get a seg fault, set the stack size to an even larger value.

  • Mat

Hi Mat,
I still get this message:
########################
[root@drizzle run]# ./DA_Run_3DVAR.csh

Running script DA_Run_3DVAR

setenv: Too many arguments.

######################

I have set three environment variables DAT_DIR,RUN_DIR,WRF_DIR in the script w’thout spaces,but with the tab n still get msg above.

see below:
setenv WRF_DIR /home/3dvar/dat_dir/wrf3dvar ‘Enter full path of wrf3dvar code directory here’
setenv DAT_DIR /home/3dvar/dat_dir ‘Enter full path of directory containing input files here’
setenv RUN_DIR /home/3dvar/run_dir ‘Enter full path of directory you want output to go here’

But i’m using Bash shell,can it be the cause of the problem?

thanks,
petero

I should have said ‘replace’ the paths instead of ‘add’.

setenv WRF_DIR /home/3dvar/dat_dir/wrf3dvar 
setenv DAT_DIR /home/3dvar/dat_dir 
setenv RUN_DIR /home/3dvar/run_dir
  • Mat

Mat,
Thanks ,i have solved the problem.
The shell was still treating those comment in single quotes as arguments,so i removed the single quotes and use pound sign and the shell treated them as comments, so i run succesfully.
petero.