This version contains bug fixes for segmentation faults for events in which the source and receiver coincide with each other, and for Pg events where source-receiver distance is greater than ~13 degrees. The SLBMtestc and SLBMtestcc test scripts were enhanced to include a stress test of the Pg calculations.
Added defaulted depth dependence (defaults to 0.0 km) for the functions:
- double getUncertainty(double distance, double depth = 0.0)
- double getVariance(double distance, double depth = 0.0)
Added new privated functions to evaluate uncertainty and variance given a depth index, distance index and distance weight.
- double getUncertainty(double wdist, int idist, int idepth)
- double getVariance(double wdist, int idist, int idepth)
Modified the getIndex(…) function to return both the index and the weight given the input independent parameter position, x, and the vector containing the independent parameter positions. The input vector can by distance or depth.
- void getIndex(double x, const vector& v, int& index, double& w)
Added the parameter vector errDepths to contain the depth positions. This parameter does not require a defintion if the input data is strictly distance dependent.
Modified the parameter vector errVal to a two dimensional vector defined by vector errval. This is so a distance vector can be assigned for each depth defined in errDepths.
Modified the function readFile(const string& filename) to look on the first line for both the distance count and the new depth count. If the new depth count is not present it defaults to 1. Modified the remainder of the function to handle depths if found:
Modified getBufferSize(), serialize(…), and deserialize(…) functions to output / input the new depth information.