> RolandPape wrote: > > I am a quite novice user of GRASS and therefore my question might be rather > > simple: I would like to calculate global radiation for each day of the year > > by using r.sun. Instead of doing so day by day I thought about using a > > script defining a loop - but as common Windows user I am not familiar with > > writing Unix-shell scripts. I appreciate any suggestions!
Dylan Beaudette wrote: > Not sure how to do this on windows, but on a linux / unix machine the > construct is like this: > > for x in `seq 1 365` > do > echo "Running r.sun for day $x: Linke turbidity factor= ${linke[$x]}" > r.sun --q --o -s elevin=$elev aspin=$aspect slopein=$slope \ > diff_rad=diffuse_0$x beam_rad=beam_0$x insol_time=time_0$x \ > day=$x \ > lin=${linke[$x]} > done & # run in the background ... > also note that i am specifying a daily TL value, from an array like this: > > linke[1]=4.1175 > linke[2]=4.1108 > linke[3]=4.104 > ... > linke[365]=4.2324 Ubuntu users beware that variable arrays are specific to Bash, so your scripts need to use #!/bin/bash Dylan: > specify a smaller range of days, and run multiple instances of the above to > use multiple cores/ processors on such a machine. Here is another approach to spawning jobs on a multi-proc system: # set the priority to low so you can still # use your machine while the model runs: renice +17 -p $$ NPROCS=4 for DAY in `seq 1 365` ; do while [ `pgrep -c r.sun` -ge $NPROCS ] ; do echo "`date`: Waiting for a slot ... " sleep 10 done DAY_NUM=`echo $DAY | awk '{printf("%03d", $1)}'` echo "[Day $DAY]" r.sun day=$DAY .... & # or save output for each day to a file # r.sun day=$DAY .... 2>&1 | cat > rsun_log_${DAY_NUM}.txt & done For more efficient batch runs, you might help test r.sun2: http://thread.gmane.org/gmane.comp.gis.grass.user/20511/focus=20594 Roland wrote: > > In one post Dylan and Hamish discussed about a r.sun manual - is it already > > available? I did not found it except the one at > > http://grass.itc.it/grass62/manuals/html62_user/r.sun.html UNIX help pages are traditionally viewed with the "man" program, hence the "r.sun manual". In GRASS 6 these man pages are generated from the HTML help pages with the tools/g.html2man/ script. There is no other user guide out there. There are some journal articles worth reading though, see the REFs section of the r.sun help page. Hamish ____________________________________________________________________________________ Never miss a thing. Make Yahoo your home page. http://www.yahoo.com/r/hs _______________________________________________ grassuser mailing list grassuser@grass.itc.it http://grass.itc.it/mailman/listinfo/grassuser