public class PolynomialStructure
extends java.lang.Object
implements java.io.Serializable
Every depth is written in radius.
This class is IMMUTABLE
When you try to get values on radius of boundaries, you will get one in the isShallower layer, i.e., the layer which has the radius as rmin.
修飾子とタイプ | フィールドと説明 |
---|---|
static PolynomialStructure |
AK135
AK135 by Kennett et al. (1995)
|
static PolynomialStructure |
ISO_PREM
isotropic PREM by Dziewonski & Anderson 1981
|
static PolynomialStructure |
PREM
transversely isotropic (TI) PREM by Dziewonski & Anderson 1981
|
コンストラクタと説明 |
---|
PolynomialStructure(java.nio.file.Path structurePath) |
修飾子とタイプ | メソッドと説明 |
---|---|
PolynomialStructure |
addBoundaries(double... radii)
半径boundariesのところに境界を作る(層を一つ増やす)
Add boundaries at the input radii.
|
double |
computeLambda(double r) |
double |
computeMu(double r) |
double |
computeVs(double r)
(2L+N)/(3ρ)
|
double |
computeXi(double r) |
org.apache.commons.math3.analysis.polynomials.PolynomialFunction |
createFunction(int n,
double[] radii,
double[] values)
The numbers of radii and values must be same.
|
boolean |
equals(java.lang.Object obj) |
int |
getCoreZone() |
double |
getEtaAt(double r) |
int |
getNzone() |
double |
getQkappaAt(double r) |
double |
getQmuAt(double r) |
double |
getQMuOf(int i) |
double |
getRhoAt(double r) |
double |
getRMaxOf(int izone) |
double |
getRMinOf(int izone) |
double |
getTransverselyIsotropicValue(TransverselyIsotropicParameter ti,
double r) |
double |
getVphAt(double r) |
org.apache.commons.math3.analysis.polynomials.PolynomialFunction |
getVphOf(int izone) |
double |
getVpvAt(double r) |
org.apache.commons.math3.analysis.polynomials.PolynomialFunction |
getVpvOf(int izone) |
double |
getVshAt(double r) |
org.apache.commons.math3.analysis.polynomials.PolynomialFunction |
getVshOf(int izone) |
double |
getVsvAt(double r) |
org.apache.commons.math3.analysis.polynomials.PolynomialFunction |
getVsvOf(int izone) |
int |
hashCode() |
static void |
main(java.lang.String[] args) |
PolynomialStructure |
setQMu(int izone,
double qMu) |
PolynomialStructure |
setVs(int izone,
org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction) |
PolynomialStructure |
setVsh(int izone,
org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction) |
PolynomialStructure |
setVsv(int izone,
org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction) |
java.lang.String[] |
toPSVlines() |
java.lang.String[] |
toSHlines() |
void |
writePSV(java.nio.file.Path outPath,
java.nio.file.OpenOption... options) |
void |
writeSH(java.nio.file.Path outPath,
java.nio.file.OpenOption... options) |
int |
zoneOf(double r) |
public static final PolynomialStructure PREM
public static final PolynomialStructure ISO_PREM
public static final PolynomialStructure AK135
public PolynomialStructure(java.nio.file.Path structurePath) throws java.io.IOException
structurePath
- Path
of ajava.io.IOException
- if an I/O error occurs. A structure file (structurePath) must
exist.public static void main(java.lang.String[] args) throws java.io.IOException
java.io.IOException
public int hashCode()
hashCode
クラス内 java.lang.Object
public boolean equals(java.lang.Object obj)
equals
クラス内 java.lang.Object
public int getCoreZone()
public double computeVs(double r)
r
- [km] radiuspublic double computeXi(double r)
r
- [km] radiuspublic PolynomialStructure addBoundaries(double... radii)
radii
- radii for boundaries. Values smaller than 0 or bigger than
earth radius will be ignoredpublic double getTransverselyIsotropicValue(TransverselyIsotropicParameter ti, double r)
public double computeMu(double r)
r
- [km] radiuspublic double computeLambda(double r)
r
- [km] radiuspublic int getNzone()
public double getQMuOf(int i)
i
- index of a zonepublic PolynomialStructure setVsv(int izone, org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction)
public PolynomialStructure setVsh(int izone, org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction)
public PolynomialStructure setVs(int izone, org.apache.commons.math3.analysis.polynomials.PolynomialFunction polynomialFunction)
public PolynomialStructure setQMu(int izone, double qMu)
public double getRMinOf(int izone)
izone
- index of the zonepublic double getRMaxOf(int izone)
izone
- index of a zonepublic double getRhoAt(double r)
r
- [km] radiuspublic double getVpvAt(double r)
r
- [km] radiuspublic double getVphAt(double r)
r
- [km] radiuspublic double getVsvAt(double r)
r
- [km] radiuspublic double getVshAt(double r)
r
- [km] radiuspublic double getEtaAt(double r)
r
- [km] radiuspublic double getQmuAt(double r)
r
- [km] radiuspublic double getQkappaAt(double r)
r
- [km] radiuspublic int zoneOf(double r)
r
- [km] radius [0, rmax]public org.apache.commons.math3.analysis.polynomials.PolynomialFunction createFunction(int n, double[] radii, double[] values)
n
- order of polynomial function. 0: constant, 1:linear function, 2:quadratic, 3: cubicradii
- [km] radiusvalues
- valuespublic java.lang.String[] toSHlines()
public java.lang.String[] toPSVlines()
public void writePSV(java.nio.file.Path outPath, java.nio.file.OpenOption... options) throws java.io.IOException
outPath
- Path
of an write file.options
- for writejava.io.IOException
- if an I/O error occurspublic void writeSH(java.nio.file.Path outPath, java.nio.file.OpenOption... options) throws java.io.IOException
outPath
- Path
of an write file.options
- for writejava.io.IOException
- if an I/O error occurspublic org.apache.commons.math3.analysis.polynomials.PolynomialFunction getVpvOf(int izone)
izone
- index of a zonepublic org.apache.commons.math3.analysis.polynomials.PolynomialFunction getVphOf(int izone)
izone
- index of a zonepublic org.apache.commons.math3.analysis.polynomials.PolynomialFunction getVsvOf(int izone)
izone
- index of a zonepublic org.apache.commons.math3.analysis.polynomials.PolynomialFunction getVshOf(int izone)
izone
- index of a zone