Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Get the current working version of gm_sim_pkg by using git clone:

    Code Block
    languagebash
    $ git clone git@github.com:ucgmsim/gm_sim_pkg.git
  2. Navigate into gm_sim_pkg directory and download the lastest package from the FTP server: ftp://ucquakecore1p.canterbury.ac.nz/seisfinder/gmsim_pack_latest.tar.gz

    Code Block
    languagebash
    $ wget ftp://ucquakecore1p.canterbury.ac.nz/seisfinder/gmsim_pack_latest.tar.gz
  3. Use install.sh to install the package just downloaded in the following format:

     ./install.sh gmsim_pack_latest.tar.gz [event_date] [event_location] [event_magnitude]

     

    Code Block
    languagebash
    $ ./install.sh gmsim_pack_latest.tar.gz 20100904 Darfield 7.1
  4. This starts the installation process.

     

    Code Block
    =========================================================================
    Event Name: 20100904_Darfield_m7p1
    Run Name: 20100904_Darfield_m7p1_201705191345201705221509
    Package to be installed: /home/seb56jonney/gm_sim_pkg/gmsim_pack_2017051720170522_14251443.tar.gz
    Run directory: /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509
    =========================================================================
    Do you wish to proceed? (Y/N) y
    =========================================================================
    Creating directory structure
    =========================================================================
    /home/seb56/tmp already exists.
    /nesi/projects/nesi00213/RealTime/code already exists.
    =========================================================================
    Extracting the package
    =========================================================================
    ./
    ./code/
    ./code/wrapper/
    ./code/wrapper/setup_remote.sh
    ./code/wrapper/make_vm.sh
    ./code/wrapper/make_stat.sh...
    ./GM/Sim/
    ./GM/Sim/Data/
    ./GM/Sim/Figures/
    ./Stat/
    =========================================================================
    Updating the data
    =========================================================================
    From https://github.com/ucgmsim/vm_data
    * branch master -> FETCH_HEAD
    Already up-to-date.
    =========================================================================
    Final touch
    =========================================================================
    >>>  Moving to /nesihome/projectsjonney/nesi00213/RealTime/code from /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/code
    >>> Updating vs30-mapping data
    location: /nesihome/projectsjonney/nesi00213/RealTime/code/Vs30-mapping
    collecting md5sum for file check
    Existing KRIGE_NZGD00_allNZ.Rdata is already good: No need to update
    >>> Making a symbolic link to /home/seb56jonney/tmp/vm_data/Data
    >>> Writing gmsim.cfg
    =========================================================================
    Done!!!!
    =========================================================================
  5. This has created the directory structure for managing the ground motion simulation for 2010 September 4 Darfield earthquake (Mw7.1)

    Code Block
    20100904_Darfield_m7p1_201705191345201705221509/
    ├── GM
    │   ├── Obs
    │   │   ├── Data
    │   │   └── Figures
    │   ├── Sim
    │   │   ├── Data
    │   │   └── Figures
    │   └── Validation
    │   ├── Data
    │   └── Figures
    ├── Impact
    │   ├── Landslide
    │   └── PAGER
    ├── Src
    │   ├── Data
    │   ├── Figures
    │   └── Model
    ├── Stat
    └── VM
    ├── Data
    ├── Figures
    ├── Model
    └── Velocity-Model
    └── Data -> /home/seb56jonney/tmp/vm_data/Data
  6. Follow the instruction shown on screen to create required Models and files.

    Code Block
    Instructions:
    Everyone: !!!!!!!!!!!!!! source /nesihome/projects/nesi00213jonney/RealTime/20100904_Darfield_m7p1_201705191345201705221509/path.sh !!!!!!!!!!!!!!
    VM: 1. cd /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/VM
    2. config_vm.py mag centroidDepth lon lat
    3. test_vm_params.py (if params_vel.py edited)
    4. make_vm.sh
    Source: 1. cd /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/Src
    2. config_src.py
    3. make_src.sh
    Obs: 1. cd /nesihome/projectsjonney/nesi00213/RealTime/20100904_Darfield_m7p1_201705191345201705221509/GM/Obs
    2. config_obs.py geoNet_ftp_url
    3. make_obs.sh


    !!! Before you move on, make sure you do the first line give in the instruction. !!!

    Code Block
    themeMidnight
    languagebash
    $ source /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/path.sh

2. How to create a Velocity Model

  1. Go to the VM directory that instruction has provided

    Code Block
    languagebash
    $ cd /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/VM
  2. Execute config_vm.py to generate params_vel.py, a config file used for velocity modelling. The command is in the following format.

    $ config_vm.py magnitude centroid_Depth Latitude Longitude

    Code Block
    languagebash
    /nesihome/projectsjonney/nesi00213/RealTime/20100904_Darfield_m7p1_201705191345201705221509/VM : config_vm.py -h
    usage: config_vm.py [-h] [--model_version MODEL_VERSION] [--min_vs MIN_VS]
                        [--topo_type TOPO_TYPE] [--hh HH]
                        [--extent_zmin EXTENT_ZMIN] [--extent_x EXTENT_X]
                        [--extent_y EXTENT_Y] [--extent_zmax EXTENT_ZMAX]
                        [--sim_duration SIM_DURATION] [--flo FLO] [--rot ROT]
                        [--code CODE] [--output_dir OUTPUT_DIR]
                        [--slice_params_dir SLICE_PARAMS_DIR]
                        mag centroidDepth lon lat
    positional arguments:
      mag
      centroidDepth
      lon
      lat
    optional arguments:
      -h, --help            show this help message and exit
      --model_version MODEL_VERSION
      --min_vs MIN_VS
      --topo_type TOPO_TYPE
      --hh HH
      --extent_zmin EXTENT_ZMIN
      --extent_x EXTENT_X
      --extent_y EXTENT_Y
      --extent_zmax EXTENT_ZMAX
      --sim_duration SIM_DURATION
      --flo FLO
      --rot ROT
      --code CODE
      --output_dir OUTPUT_DIR
      --slice_params_dir SLICE_PARAMS_DIR

    Three parameters mag, centroidDepth, lon, lat are mandatory. You can set other options with --option, such as --hh 0.2 or manually set by editing params_vel.py

    Code Block
    languagebash
    /nesihome/projects/nesi00213jonney/RealTime/20100904_Darfield_m7p1_201705191345201705221509/VM : config_vm.py 7.1  46.00 172.3 -43.6 --hh 0.2 --rot -10 --extent_x 140 --extent_y 120 --extent_zmax 46.0 --sim_duration 100
    mag = 7.1 centroidDepth = 46.0 lon= 172.3 lat = -43.6
    ############  Generated params_vel.py
    
    # If you edited this file manually, run 'test_vm_params.py' for integrity check !!!
    # Section I. Basic parameters (Manual Edit allowed)
    mag = '7.1'
    centroidDepth = '46.00'
    MODEL_LAT = '-43.6'
    MODEL_LON = '172.3'
    MODEL_ROT = '-10.0'
    hh = '0.200'
    min_vs = '0.5'
    model_version = '1.65'
    topo_type = 'BULLDOZED'
    output_directory = 'Rapid_Model'
    extracted_slice_parameters_directory = 'SliceParametersNZ/SliceParametersExtracted.txt'
    code = 'rt'
    # Section II. Derived parameters that can be manually editted
    extent_x = '140.0'
    extent_y = '120.0'
    extent_zmax = '46.0'
    extent_zmin = '0.0'
    sim_duration = '100.0'
    flo = '0.5'
    # Section III. Automated values. DO NOT EDIT (Manual changes will be ignored)
    nx = ' 700'
    ny = ' 600'
    nz = '230'
    sufx = '_rt01-h0.200'
    ############  Estimated Wallclock time
    nx=700 ny=600 nz=230 sim_duration=100 num_procs=512
    Maximum: 0:55:02
    Average: 0:17:16.597834
    Minimum: 0:11:58.613082
    
    


  3. You can manually edit params_vel.py. But you are strongly advised to run test_vm_params.py to validate your params_vel.py if manually edited. Note that values in Section II will be automatically computed based on the values in Section I, but user can manually edit them. However, any manual changes made to Section III will be ignored. 
    In the example, we execute test_vm_params.py after manually editing the value for "code" from "rt" to "nz". This creates new params_vel.py after making a backup of the original, and shows the difference between two. Notice " | " where a difference is observed (line 30).

    Code Block
    languagebash
    linenumberstrue
    /nesihome/projectsjonney/nesi00213/RealTime/20100904_Darfield_m7p1_201705011613201705221509/VM :test_vm_params.py
    #####################   Backing up params_vel.py to params_vel.py.bak
    #####################  params_vel.py updated
    diff -y params_vel.py.bak params_vel.py
    # If you edited this file manually, run 'test_vm_params.py' f   # If you edited this file manually, run 'test_vm_params.py' f
    # Section I. Basic parameters (Manual Edit allowed)             # Section I. Basic parameters (Manual Edit allowed)
    mag = '7.1'                                                     mag = '7.1'
    centroidDepth = '46.00'                                         centroidDepth = '46.00'
    MODEL_LAT = '-43.6'                                             MODEL_LAT = '-43.6'
    MODEL_LON = '172.3'                                             MODEL_LON = '172.3'
    MODEL_ROT = '-10.0'                                             MODEL_ROT = '-10.0'
    hh = '0.200'                                                    hh = '0.200'
    min_vs = '0.5'                                                  min_vs = '0.5'
    model_version = '1.65'                                          model_version = '1.65'
    topo_type = 'BULLDOZED'                                         topo_type = 'BULLDOZED'
    output_directory = 'Rapid_Model'                                output_directory = 'Rapid_Model'
    extracted_slice_parameters_directory = 'SliceParametersNZ/Sli   extracted_slice_parameters_directory = 'SliceParametersNZ/Sli
    code = 'nz'                                                     code = 'nz'
    # Section II. Derived parameters that can be manually editted   # Section II. Derived parameters that can be manually editted
    extent_x = '140.0'                                              extent_x = '140.0'
    extent_y = '120.0'                                              extent_y = '120.0'
    extent_zmax = '46.0'                                            extent_zmax = '46.0'
    extent_zmin = '0.0'                                             extent_zmin = '0.0'
    sim_duration = '100.0'                                          sim_duration = '100.0'
    flo = '0.5'                                                     flo = '0.5'
    # Section III. Automated values. DO NOT EDIT (Manual changes    # Section III. Automated values. DO NOT EDIT (Manual changes
    nx = ' 700'                                                     nx = ' 700'
    ny = ' 600'                                                     ny = ' 600'
    nz = '230'                                                      nz = '230'
    sufx = '_rt01-h0.200'                                         | sufx = '_nz01-h0.200'
    
    ############  Estimated Wallclock time
    nx=700 ny=600 nz=230 sim_duration=100 num_procs=512
    Maximum: 0:55:02
    Average: 0:17:16.597834
    Minimum: 0:11:58.613082
    
    
  4. Run make_vm.sh to create the Velocity Model

    Code Block
    languagebash
    /home/jonney/20100904_Darfield_m7p1_201705191345201705221509/VM :make_vm.sh
    Executing genDomain.py
    Reading domain extents.
    Reading of domain extents. Complete.
    Writing generate velocity model shell scrip.
    Writing generate velocity model shell scrip. Complete.
    Generating velocity model.
    ==========================================
    Running GENERATE_VELOCITY_MOD.
    ==========================================
    ...
    ==========================================
    Completed running GENERATE_VELOCITY_MOD.
    ==========================================
    ...
    ==========================================
    Running EXTRACT_VELOCITY_SLICES.
    ==========================================
    ...
    ==========================================
    Completed running EXTRACT_VELOCITY_SLICES.
    ==========================================
    ...
    /nesi/projects/nesi00213/tools/gen_model_cords geoproj=1 gridfile=./Rapid_Model/Rapid_Model/Velocity_Model/gridfile_nz01-h0.200 gridout=./Rapid_Model/Rapid_Model/Velocity_Model/gridout_nz01-h0.200 center_origin=1 do_coords=1 nzout=1 name=./Rapid_Model/Rapid_Model/Velocity_Model/model_coords_nz01-h0.200 gzip=0 latfirst=0 modellon=172.3 modellat=-43.6 modelrot=-10.0 1> ./Rapid_Model/Rapid_Model/Velocity_Model/model_params_nz01-h0.200 2>/dev/null
    Generating model params and cords. Complete.
    Moving velocity model plots.
    Moving velocity model plots. Complete.
    Removing generated scripts.
    Rapid model generation complete.
    Model/20100904_Darfield_m7p1/v1.65_200m
    !!!!!  Ask Admin to upload: Give him the path: /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/VM !!!!!
  5. Under the working directory VM, a subdirectory is created Model/20100904_Darfield_m7p1/v1.65_200m which contains the velocity model.

    Code Block
    languagebash
    /nesi/projects/nesi00213/RealTimehome/jonney/20100904_Darfield_m7p1_201705191345201705221509/VM/Model/20100904_Darfield_m7p1/v1.65_200m :ls
    gridfile_nz01-h0.200  Info                      model_coords_nz01-h0.200  params_vel.py  vp3dfile.p
    gridout_nz01-h0.200   model_bounds_nz01-h0.200  model_params_nz01-h0.200  rho3dfile.d    vs3dfile.s
  6. Give the admin (Sung) the path to the VM working directory and request to upload the model. The admin will need to execute sendme.sh in the VM directory.

    Code Block
    languagebash
    /nesihome/projectsjonney/nesi00213/RealTime/20100904_Darfield_m7p1_201705191345201705221509/VM/sendme.sh
    SCP Upload tool
    Establishing SSH connection to: fitzroy.nesi.org.nz 22 ...
    Node size : 4
    ****************************************
    /home/nesi00213...del/20100904_Darfield_m7p1/v1.65_200m/Info                       49 Bytes Completed
    /home/nesi00213...904_Darfield_m7p1/v1.65_200m/params_vel.py                      756 Bytes Completed
    /home/nesi00213...d_m7p1/v1.65_200m/model_params_nz01-h0.200                      381 Bytes Completed
    /home/nesi00213...field_m7p1/v1.65_200m/gridfile_nz01-h0.200                      155 Bytes Completed
    /home/nesi00213...d_m7p1/v1.65_200m/model_bounds_nz01-h0.200                       96.3 KiB Completed
    /home/nesi00213...rfield_m7p1/v1.65_200m/gridout_nz01-h0.200                       52.4 KiB Completed
    /home/nesi00213...d_m7p1/v1.65_200m/model_coords_nz01-h0.200                       15.2 MiB Completed
    /home/nesi00213...100904_Darfield_m7p1/v1.65_200m/vs3dfile.s                      368.5 MiB Completed
    /home/nesi00213...00904_Darfield_m7p1/v1.65_200m/rho3dfile.d                      368.5 MiB Completed
    /home/nesi00213...100904_Darfield_m7p1/v1.65_200m/vp3dfile.p                      368.5 MiB Completed
    Node 1: /home/nesi00213...100904_Darfield_m7p1/v1.65_200m/vs3dfile.s     368.5 MiB/368.5 MiB 100.0%
    Node 2: /home/nesi00213...00904_Darfield_m7p1/v1.65_200m/rho3dfile.d     368.5 MiB/368.5 MiB 100.0%
    Node 3: /home/nesi00213...100904_Darfield_m7p1/v1.65_200m/vp3dfile.p     368.5 MiB/368.5 MiB 100.0%
  7. Files have been successfully uploaded to Fitzroy.

    Code Block
    languagebash
    titleBash_code
    baes@nesi2 /nesi/projects/nesi00213/VelocityModels/NZ/20100904_Darfield_m7p1/v1.65_200m :ls
    Info                  gridout_nz01-h0.200       model_coords_nz01-h0.200  params_vel.py  vp3dfile.p
    gridfile_nz01-h0.200  model_bounds_nz01-h0.200  model_params_nz01-h0.200  rho3dfile.d    vs3dfile.s



3. How to create Rupture Model (Source)

  1. Go to the Src directory that instruction has provided

    e.g. $ cd
    Code Block
    languagebash
    $ cd /home/jonney/20100904_Darfield_m7p1_
    201705181350
    201705221509/Src
  2. Create the config file that is needed for generating a Rupture Model


    $ config



    Code Block
    languagebash
    $config_src.py
    type
    e.g. $
     -h
    usage: config_src.py [-h] {1,2,3,4} ...
    positional arguments:
      {1,2,3,4}   Choose the type of srf you want to generate, usage of each type
                  use: gen_src_params.py type -h
        1         Generate type 1 srf (Point source srf).
        2         Generate type 2 srf (Point source to Finite Fault srf).
        3         Generate type 3 srf (Finite Fault descriptor to Finite Fault
                  srf).
        4         Generate type 4 srf (Multiple Segment Finite Fault srf).
    optional arguments:
      -h, --help  show this help message and exit

    The extra options may differ from type to type. Use: "config_src.py type -h" will show you all the options can be provided for that type of source. 

    example of showing options for type 2:

    Code Block
    languagebash
    $ config_src.py 2 -h
    usage: config_src.py 2 [-h] [--LAT [LAT]] [--LON [LON]] [--MAG [MAG]]
                           [--STK [STK]] [--RAK [RAK]] [--DIP [DIP]] [--DT [DT]]
                           [--DEPTH [DEPTH]] [--SEED [SEED]] [--RVFRAC [RVFRAC]]
                           [--ROUGH [ROUGH]] [--SLIP_COV [SLIP_COV]]
                           [--MWSR [MWSR]] [--STOCH [STOCH]] [--GENSLIP [GENSLIP]]
                           [--PREFIX [PREFIX]]
    optional arguments:
      -h, --help            show this help message and exit
      --LAT [LAT]           latitude (float)
      --LON [LON]           longitude (float)
      --MAG [MAG]           magnitude (float)
      --STK [STK]           strike (int)
      --RAK [RAK]           rake (int)
      --DIP [DIP]           dip (int)
      --DT [DT]             rupture timestep
      --DEPTH [DEPTH]
      --SEED [SEED]
      --RVFRAC [RVFRAC]
      --ROUGH [ROUGH]
      --SLIP_COV [SLIP_COV]
      --MWSR [MWSR]         Mw Scaling Relation (string), one
                            of:HanksBakun2002,BerrymanEtAl2002,VillamorEtAl2001
      --STOCH [STOCH]       String to set stoch gener ation. Default vaule will be
                            used if not specified
      --GENSLIP [GENSLIP]   Version of genslip
      --PREFIX [PREFIX]     The prefix you want for SRF files. defualt= source.
                            Ending with _ will auto append extra info to file
                            name. Defualt value will be used if not specified.

    And example of creating type 2 Source file:

    Code Block
    languagebash
    config_src.py 2 --LAT -43.6 --LON 172.3 --MAG 7.1
    TYPE =  2
    LAT =  -43.6
    LON =  172.3
    MAG =  7.1
    PREFIX =  Srf/source
    SEED =  103245
    STOCH =  Stoch
    ####################
    the params below are not specified, please manually edit setSrfParams.py to specify the value.
    ####################
    STK =
    RAK =
    DIP =
    DT =
    RVFRAC =
    ROUGH =
    SLIP_COV =
    DEPTH =
    MWSR =
    GENSLIP =
    ####################
    Afte manually fill in all the required parameters, please cd to where setSrfParams.py is located at and run make_src.sh
    cd /home/jonney/20100904_Darfield_m7p1_201705221509/Src/Model/20100904_Darfield_m7p1/t2_103245
    ####################



  3. Go to the folder provided by instrutions
    e.g. $ cd /home/jonney/20100904_Darfield_m7p1_201705181350/Src/Model/20100904_Darfield_m7p1/t2_103245_20170518_175214
  4. Edit the setSrfParams.py
    note: every variables with #!!!PLEASE SPECIFY!!!# must be provided
  5. Create the Model using make_src.sh
    e.g. $ make_src.sh
  6. Follow the instruction given on the screen to provide a path to a admin.

...