Implements Earthquake Object and Input validators

Graeme Weatherill requested to merge gweather/shakyground2:eq_object into master

Merge request implements initial set of features to describe an earthquake object, valid an input and generate a finite rupture surface from which source and distance properties can be calculated. Addresses: #8 (closed)

New features implemented are:

  1. Earthquake object (shakyground2.earthquake.Earthquake) - contains attributes and initial functions for describing the earthquake source

  2. Validation module (shakyground2.valid) - a set of validators to ensure input properties of the earthquake are physically correct with respect to the Earth and raise descriptive errors if not.

  3. Dummy Magnitude Scaling relation (shakyground2.earthquake.DummyScalingRelation) - a simple magnitude to rupture dimension scaling relation based on the PEER Test definition. To be used as a placeholder until completion of #9 (closed), then a default thereafter.

Tests added for all modules.

Merge request reports