Difference between revisions of "Rupture Variation Generator v5.4.2 code changes"

From SCECpedia
Jump to navigationJump to search
Line 1: Line 1:
This page documents the code changes required to turn the stand-alone version, genslip-v5.4.2, into an API callable by the CyberShake post-processing.  The changes are indexed by file.
+
This page documents the code changes required to turn the stand-alone version, genslip-v5.4.2, into an API callable by the CyberShake post-processing.
  
In this document, $ROOT_DIR is taken to be the RupGen-api-5.4.2 directory.
+
In this document, $ROOT_DIR is taken to be the <CyberShake home>/software/RuptureCodes/RupGen-api-5.4.2 directory.  GenRandV5.0 is the code as received from Rob Graves.
  
To start, create src, include, lib, and bin directories inside $ROOT_DIR .
+
== Installing files ==
 +
 
 +
<ol>
 +
<li>Create src, include, lib, and bin directories inside $ROOT_DIR .</li>
 +
<li>Inside src, create GenRandV5.0.</li>
 +
<li>Copy rupgen_api.c from a previous API version into src. </li>
 +
<li>Copy rupgen_api.h from a previous API version into include. </li>
 +
<li>Confusingly, there are two files named structure.h.  One is in StandRupFormat and contains the structures needed for an SRF.  The other is in GenRandV5.0 and contains the definition for complex, along with a few other supporting structures.
 +
<ol>
 +
<li>Copy the StandRupFormat/structure.h into include/srf_structure.h .</li>
 +
<li>Copy the GenRandV5.0/structure.h into include/structure.h .</li>
 +
<li>Create a symlink to both
 +
 
 +
==
 +
 
 +
== Editing files ==
 +
 
 +
=== structure.h ===
  
== structure.h ==
 
 
<ol>
 
<ol>
<li>Copy into $ROOT_DIR/include .</li>
 
 
<li>At the top of the file, add:
 
<li>At the top of the file, add:
 
<pre>
 
<pre>
Line 17: Line 32:
 
#endif
 
#endif
 
</pre></li>
 
</pre></li>
<li>Copy this file into $ROOT_DIR/src .</li>
 
 
<li>Create a symlink from $ROOT_DIR/GenRandV5.0/structure.h which points to the file in $ROOT_DIR/src.</li>
 
<li>Create a symlink from $ROOT_DIR/GenRandV5.0/structure.h which points to the file in $ROOT_DIR/src.</li>
 
</ol>
 
</ol>

Revision as of 15:21, 2 October 2019

This page documents the code changes required to turn the stand-alone version, genslip-v5.4.2, into an API callable by the CyberShake post-processing.

In this document, $ROOT_DIR is taken to be the <CyberShake home>/software/RuptureCodes/RupGen-api-5.4.2 directory. GenRandV5.0 is the code as received from Rob Graves.

Installing files

  1. Create src, include, lib, and bin directories inside $ROOT_DIR .
  2. Inside src, create GenRandV5.0.
  3. Copy rupgen_api.c from a previous API version into src.
  4. Copy rupgen_api.h from a previous API version into include.
  5. Confusingly, there are two files named structure.h. One is in StandRupFormat and contains the structures needed for an SRF. The other is in GenRandV5.0 and contains the definition for complex, along with a few other supporting structures.
    1. Copy the StandRupFormat/structure.h into include/srf_structure.h .
    2. Copy the GenRandV5.0/structure.h into include/structure.h .
    3. Create a symlink to both ==

      Editing files

      structure.h

      1. At the top of the file, add:
        #ifndef STRUCT_H
        #define STRUCT_H
        
      2. At the end of the file, add:
        #endif
        
      3. Create a symlink from $ROOT_DIR/GenRandV5.0/structure.h which points to the file in $ROOT_DIR/src.