UCVM Review

From SCECpedia
Revision as of 16:19, 2 November 2017 by Maechlin (talk | contribs)
Jump to navigationJump to search

Then entry defines test cases used to document performance of the UCVMC v17.1 release.

Test Case ucvm2mesh and ucvm2mesh-mpi tests

  • The goal of this test is to construct AWP test meshes using both ucvm2mesh and ucvm2mesh-mpi.
  1. Test that shows equivalent input files for ucvm2mesh and ucvm2mesh-mpi. Also includes the job submit script for mpi job, and defines the restrictions on number of nodes.
  2. Test that shows the mesh values returned by these methods are identical.
  3. Update ucvmc Installation instructions need to be updated to describe how to create mpi version if running on usc hpc.

Test Case for basin_query serial and mpi tests

  • The goal of this test is to evaluate the results from basin_query and basin_query_mpi to demonstrate the produce the same results.
  1. Test case that queries basin_query and basin_query_mpi showing that they return the same depth values.

Test Case for Basin Query depth Algorithm

  • Goal of this test is to document the algorithms available in ucvmc, and show example return values for each.
  1. Test that confirms basin_query and basin_query_mpi return the same value for the same point. Document which of the basin_query values is returned by basin_query_mpi
  2. Test that shows what basin_query and basin_query_mpi return for points outside the defined volume of the model
  3. Test that shows how basin_query and basin_query_mpi support model tiling.

Test Case for Blue Waters and Titan

  1. Install UCVMC 17.1 on Blue Water and Titans.
  2. Regenerate ucvm2mesh_mpi meshes and confirm them match ones from USC

Test Case for Tomography Utility Projection

  1. Test cases showing that projection issue in CCA06 is fixed. Confirm this is in latest UCVMC


Basin region Specs

CCA:

  • minLat = 33.35
  • minLon = -123
  • nx = 1551
  • ny = 1201
  • gridSpacing = 0.005 m

CVM-S4.26:

  • minLat = 31;
  • minLon = -121;
  • nx = 1701;
  • ny = 1101;
  • gridSpacing = 0.005 degrees
  1. define depth

When we extract these basin data sets as binary regular mesh format, we will check them by plotting and comparing with previous versions. We need separate files for Z1.0 and Z2.5 in meters.

The binary files are 4 byte float, little endian, fast XY, no rotation. Here are the formulas for lat/lon at a given x/y index:

lon = xIndex * gridSpacing + minLon
lat = yIndex * gridSpacing + minLat

and for calculating the file position for a given xIndex/yIndex:

filePos = 4 * (nx * yIndex + xIndex)

The first data point is bottom left (at minX, minY).

Velocity mesh plotting scripts from CyberShake codebase

As part of the CyberShake work, we've developed a few Python scripts for plotting horizontal cross-sections (plot_horiz_slice.py), vertical cross-sections (plot_vertical_slice.py), and profile plots (plot_profile.py). The scripts are available in the CyberShake SVN repository, at http://source.usc.edu/svn/cybershake/import/trunk/UCVM/smoothing/ . As input, they expect a mesh in AWP format, and also a model coords file, which contains a listing of the lat/lon values for each surface point in the mesh (this is used for decimation purposes).

Sample plots produced using these scripts can be seen here.

Introductory Presentations

UCVM-Python Tutorials

Training Day 1:

Additional training found on hypocenter (4 videos in the root here):

UCVM Scripts and Utilities

Related Entries