|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--corina.cross.Cross | +--corina.cross.TScore
A (Student's) T-Score crossdate.
This algorithm is based on Mecki Pohl's algorithm, and gives very similar results (reason for deviations unknown, possibly rounding error). I'm not completely certain this implementation is correct, but it gives usable results. Corrections welcome.
There are apparently many (dozens of?) T-score algorithms in existance. This one is taken from Baillie and Pilcher's "A Simple Crossdating Program", pp. 7-14, Tree-Ring Bulletin, Vol. 33, 1973. That version was "written in FORTRAN IV and uses a card reader and line printer".
The procedure used is as follows:
s1 = Σ ( xiyi - N ( xi - xavg ) ( yi - yavg ) )
s2 = Σ ( xi2 - N ( xi - xavg )2 )
s3 = Σ ( yi2 - N ( yi - yavg )2 )
r = s1 / √( s2 s3 )
t = r √( (N - 2) / (1 - r2) )
This class is dedicated to poor Mr. Potter out in Van Nuys.
Fields inherited from class corina.cross.Cross |
data, fixed, highScores, moving, msg |
Constructor Summary | |
protected |
TScore()
|
|
TScore(Sample s1,
Sample s2)
Construct a new T-score from two samples. |
Method Summary | |
double |
compute(int offsetFixed,
int offsetMoving)
Given offsets into the fixed and moving data, compute a single T-score for that position. |
String |
getFormat()
A format string for T-scores. |
double |
getMinimumSignificant()
|
String |
getName()
Return a prettier name for this cross: "T-Score". |
boolean |
isSignificant(double score,
int overlap)
|
protected void |
preamble()
Preamble: copy all data to (mutable) float arrays, normalize the data, and compute means of the series. |
Methods inherited from class corina.cross.Cross |
getFixed, getMinimumOverlap, getMoving, isFinished, run, single, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
protected TScore()
public TScore(Sample s1, Sample s2)
s1
- the fixed samples2
- the moving sampleMethod Detail |
public String getName()
getName
in class Cross
public String getFormat()
getFormat
in class Cross
public boolean isSignificant(double score, int overlap)
isSignificant
in class Cross
public double getMinimumSignificant()
getMinimumSignificant
in class Cross
public double compute(int offsetFixed, int offsetMoving)
compute
in class Cross
protected void preamble()
preamble
in class Cross
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |