Giter Site home page Giter Site logo

psu_wrf_enkf's People

Contributors

hanschen avatar hwlai avatar myying avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

psu_wrf_enkf's Issues

module_obsproc.sh may miss some observations

Currently module_obsproc will append observations to obs.raw from files within a given time window ($OBS_WIN_MIN/60 - $time_lag to $OBS_WIN_MAX/60 + $time_lag), and, if I understand the code correctly, also the observation file closest to the current date. Here is the relevant code for LITTLE_R:

rm -f datelist                                                                                                                                                                                                                   
time_lag=0                                                                                                                                                                                                                       
obs_interval=6                                                                                                                                                                                                                   
for offset in `seq $((OBS_WIN_MIN/60-$time_lag)) $obs_interval $((OBS_WIN_MAX/60+$time_lag))`; do                                                                                                                                
obsdate=`advance_time $DATE $((offset*60))`                                                                                                                                                                                    
hh=`echo $obsdate |cut -c9-10`                                                                                                                                                                                                 
inc=`echo $hh%$obs_interval*60 |bc`                                                                                                                                                                                            
if [[ $inc -lt $((obs_interval*60/2)) ]]; then                                                                                                                                                                                 
  obsdate=`advance_time $obsdate -$inc`                                                                                                                                                                                        
else                                                                                                                                                                                                                           
  obsdate=`advance_time $obsdate $((obs_interval*60-inc))`                                                                                                                                                                     
fi                                                                                                                                                                                                                             
echo $obsdate >> datelist                                                                                                                                                                                                      
done                                                                                                                                                                                                                             
for d in `cat datelist |sort |uniq`; do                                                                                                                                                                                          
  cat $DATA_DIR/littler/little_r:${d:0:4}-${d:4:2}-${d:6:2}_${d:8:2}:${d:10:2} >> obs.raw                                                                                                                                      
done 

For the assimilation at 200508251500 for the default katrina case, it uses the observations stored in the 200508251800 LITLLE_R file, with the following result:

slot= 1  time_min, time_fg, time_max:  2005-08-25_14:30:00  2005-08-25_15:00:00  2005-08-25_15:29:59
------------------------------------------------------------------------------
OBSERVATIONS FOR OUTPUT SLOT 01

 SYNOP reports:     0
 SHIPS reports:     0
 BUOY  reports:   105
 BUGUS reports:     0
 METAR reports:  5265
 PILOT reports:     0
 SOUND reports:     1
 AMDAR reports:     0
 SATEM reports:     0
 SATOB reports:  4862
 AIREP reports:     0
TAMDAR reports:     0
 GPSPW reports:     0
 GPSZD reports:     0
 GPSRF reports:     0
 GPSEP reports:     0
 SSMT1 reports:     0
 SSMT2 reports:     0
 SSMI  reports:     0
 TOVS  reports:     0
 QSCAT reports:     0
 PROFL reports:    60
 AIRST reports:     0
 OTHER reports:     0
 Total reports: 10293 =  10232 single +     61 multi-level reports.

------------------------------------------------------------------------------
Write 3DVAR 3DVAR GTS observations in file obs_gts_2005-08-25_15:00:00.3DVAR (wrfvar version 3.0)

Wrote   23568 lines of data in file: obs_gts_2005-08-25_15:00:00.3DVAR

This is what I get when I also include the observation file for 200508251200:

slot= 1  time_min, time_fg, time_max:  2005-08-25_14:30:00  2005-08-25_15:00:00  2005-08-25_15:29:59
------------------------------------------------------------------------------
OBSERVATIONS FOR OUTPUT SLOT 01

 SYNOP reports:     0
 SHIPS reports:     0
 BUOY  reports:   105
 BUGUS reports:     0
 METAR reports:  5705
 PILOT reports:     0
 SOUND reports:     1
 AMDAR reports:     0
 SATEM reports:     0
 SATOB reports:  4862
 AIREP reports:     0
TAMDAR reports:     0
 GPSPW reports:     0
 GPSZD reports:     0
 GPSRF reports:     0
 GPSEP reports:     0
 SSMT1 reports:     0
 SSMT2 reports:     0
 SSMI  reports:     0
 TOVS  reports:     0
 QSCAT reports:     0
 PROFL reports:    60
 AIRST reports:     0
 OTHER reports:     0
 Total reports: 10733 =  10672 single +     61 multi-level reports.

------------------------------------------------------------------------------
Write 3DVAR 3DVAR GTS observations in file obs_gts_2005-08-25_15:00:00.3DVAR (wrfvar version 3.0)

Wrote   24448 lines of data in file: obs_gts_2005-08-25_15:00:00.3DVAR

Not sure if this matters or not, but I thought it would be worth to make a note about.

The README could provide clearer instructions on how to run the katrina case

The current README:

A sample configuration file has been setup for the Katrina case: config/katrina_enkf

Test case data set can be found here: http://hfip.psu.edu/yxy159/katrinaTestData.tar

Once you completed steps 1 and 2, set DATA_DIR to the test data directory, then just submit/execute run_cycle.sh.

But there are no steps 1 and 2.

Given that most people start learning about the system by running the katrina case, it could be worth improving these instructions (for anyone who's motivated).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.