cOkadaEarthquake.h 951 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
#ifndef OKADAEARTHQUAKE_H
#define OKADAEARTHQUAKE_H

#include <cOgrd.h>
#include <cSphere.h>
#include "cOkadaFault.h"


class cOkadaEarthquake
{
protected:

  int finalized;
  int getDeformArea( int round, double& lonmin, double& lonmax, double& latmin, double& latmax );
  int setGrid( cOgrd& u );

public:

  int nfault;            // total nuber of Okada faults
  double m0;             // total earthquake moment
  cOkadaFault *fault;    // array of composing faults

  cOkadaEarthquake();
  ~cOkadaEarthquake();
  int read( char *fname );
  int finalizeInput();
  double getM0();
  double getMw();
  int calculate( double lon, double lat, double& uz );
  int calculate( double lon, double lat, double& uz, double& ulon, double &ulat );
  int calculate( cObsArray& arr );
  int calculate( cOgrd& uZ );
  int calculate( cOgrd& uZ, cOgrd& uLon, cOgrd& uLat );
  char *sprint();

};

#endif // OKADAEARTHQUAKE_H