Public Member Functions | |
Uncertainty () | |
Default constructor. | |
Uncertainty (Double plus, Double minus, ErrorSource sourcetype, ErrorNorm normtype) | |
Constructor for asymmetric errors. | |
Uncertainty (Double plusminus, ErrorSource sourcetype, ErrorNorm normtype) | |
Constructor for symmetric error. | |
boolean | isSymmetric () |
Are the plus and minus errors symmetric? | |
boolean | hasZeroSize () |
Are the plus and minus errors both zero? | |
Uncertainty | getAbsoluteError (Point p) throws HDException |
Calculate the absolute error object for this error and the given Point. | |
Double | getPlus () |
Get the upward error. | |
Uncertainty | setPlus (Double plus) |
Set the upward error. | |
Double | getMinus () |
Get the downward error. | |
Uncertainty | setMinus (Double minus) |
Set the downward error. | |
ErrorSource | getSourceType () |
Get the error source type (stat, sys, etc. | |
Uncertainty | setSourceType (ErrorSource sourcetype) |
Set the error source type (stat, sys, etc. | |
ErrorNorm | getNormType () |
Get the error normalization type (abs, frac, pct, etc. | |
Uncertainty | setNormType (ErrorNorm normtype) |
Set the error normalization type (abs, frac, pct, etc. | |
String | getComment () |
Get the modification comment string. | |
Uncertainty | setComment (String comment) |
Set the modification comment string. | |
int | compareTo (Uncertainty other) |
String | toString () |
String representation. | |
String | toString (Integer indentBy) |
Indented string representation. | |
Package Functions | |
Logger | log () |
Neat method to allow every class to get hold of a custom-named Logger. |
Definition at line 18 of file Uncertainty.java.
Uncertainty | ( | ) |
Default constructor.
Definition at line 53 of file Uncertainty.java.
Referenced by Uncertainty.getAbsoluteError().
Uncertainty | ( | Double | plus, | |
Double | minus, | |||
ErrorSource | sourcetype, | |||
ErrorNorm | normtype | |||
) |
Constructor for asymmetric errors.
plus | input <0 gives -err1 | |
minus | input <0 gives +err2 | |
sourcetype | : origin of error, i.e. systematic, statistical, etc. | |
normtype | : normalisation of error, i.e. absolute, fractional, percentage, etc. |
Definition at line 63 of file Uncertainty.java.
References Uncertainty.setMinus(), Uncertainty.setNormType(), Uncertainty.setPlus(), and Uncertainty.setSourceType().
00063 { 00064 setPlus( (plus != null) ? plus : 0.0 ); 00065 setMinus( (minus != null) ? minus : 0.0 ); 00066 setSourceType(sourcetype); 00067 setNormType(normtype); 00068 }
Uncertainty | ( | Double | plusminus, | |
ErrorSource | sourcetype, | |||
ErrorNorm | normtype | |||
) |
Constructor for symmetric error.
plusminus | : size of symmetric error | |
sourcetype | : origin of error, i.e. systematic, statistical, etc. | |
normtype | : normalisation of error, i.e. absolute, fractional, percentage, etc. |
Definition at line 77 of file Uncertainty.java.
boolean isSymmetric | ( | ) |
Are the plus and minus errors symmetric?
Definition at line 88 of file Uncertainty.java.
References Uncertainty.getMinus(), and Uncertainty.getPlus().
Referenced by Uncertainty.toString().
boolean hasZeroSize | ( | ) |
Are the plus and minus errors both zero?
Definition at line 94 of file Uncertainty.java.
References Uncertainty.getMinus(), and Uncertainty.getPlus().
Uncertainty getAbsoluteError | ( | Point | p | ) | throws HDException |
Calculate the absolute error object for this error and the given Point.
Reimplemented in PointError.
Definition at line 105 of file Uncertainty.java.
References Uncertainty.getMinus(), Uncertainty.getNormType(), Uncertainty.getPlus(), Uncertainty.getSourceType(), and Uncertainty.Uncertainty().
Referenced by PointError.getAbsoluteError().
00105 { 00106 if (getNormType() == ErrorNorm.UNKNOWN) { 00107 throw new HDException("Attempted to get the absolute error from an unknown error type."); 00108 } 00109 00110 Double absplus = getPlus(); 00111 Double absminus = getMinus(); 00112 if (getNormType() != ErrorNorm.ABS) { 00113 if (getNormType() == ErrorNorm.FRAC) { 00114 absplus *= p.getValue(); 00115 absminus *= p.getValue(); 00116 } else if (getNormType() == ErrorNorm.PCT) { 00117 absplus *= (p.getValue() / 100.0); 00118 absminus *= (p.getValue() / 100.0); 00119 } 00120 } 00121 Uncertainty err = new Uncertainty(absplus, absminus, getSourceType(), ErrorNorm.ABS); 00122 return err; 00123 }
Double getPlus | ( | ) |
Get the upward error.
Definition at line 132 of file Uncertainty.java.
Referenced by AxisError.equals(), Uncertainty.getAbsoluteError(), PointError.hashCode(), DatasetError.hashCode(), AxisError.hashCode(), Uncertainty.hasZeroSize(), Uncertainty.isSymmetric(), and Uncertainty.toString().
Uncertainty setPlus | ( | Double | plus | ) |
Set the upward error.
Definition at line 137 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
Double getMinus | ( | ) |
Get the downward error.
Definition at line 145 of file Uncertainty.java.
Referenced by AxisError.equals(), Uncertainty.getAbsoluteError(), PointError.hashCode(), DatasetError.hashCode(), AxisError.hashCode(), Uncertainty.hasZeroSize(), Uncertainty.isSymmetric(), and Uncertainty.toString().
Uncertainty setMinus | ( | Double | minus | ) |
Set the downward error.
Definition at line 150 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
ErrorSource getSourceType | ( | ) |
Get the error source type (stat, sys, etc.
) as an enum.
Definition at line 158 of file Uncertainty.java.
Referenced by AxisError.equals(), Uncertainty.getAbsoluteError(), PointError.hashCode(), DatasetError.hashCode(), AxisError.hashCode(), and Uncertainty.toString().
Uncertainty setSourceType | ( | ErrorSource | sourcetype | ) |
Set the error source type (stat, sys, etc.
) from the enum.
Definition at line 163 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
ErrorNorm getNormType | ( | ) |
Get the error normalization type (abs, frac, pct, etc.
) as an enum.
Definition at line 170 of file Uncertainty.java.
Referenced by AxisError.equals(), Uncertainty.getAbsoluteError(), PointError.hashCode(), DatasetError.hashCode(), AxisError.hashCode(), and Uncertainty.toString().
Uncertainty setNormType | ( | ErrorNorm | normtype | ) |
Set the error normalization type (abs, frac, pct, etc.
) from the enum.
Reimplemented in DatasetError.
Definition at line 174 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
String getComment | ( | ) |
Get the modification comment string.
Definition at line 181 of file Uncertainty.java.
Referenced by Uncertainty.toString().
Uncertainty setComment | ( | String | comment | ) |
int compareTo | ( | Uncertainty | other | ) |
Definition at line 194 of file Uncertainty.java.
References DatasetError.compareTo(), AxisError.compareTo(), PointError.compareTo(), and Storeable.log().
00194 { 00195 log().debug("Comparing errors..."); 00196 00197 // For point errors 00198 if (this instanceof PointError) { 00199 if (other instanceof PointError) { 00200 PointError test = (PointError) this; 00201 int result = test.compareTo((PointError) other); 00202 if (result != 0) return result; 00203 } else return 1; 00204 } 00205 00206 // For axis errors 00207 if (this instanceof AxisError) { 00208 if (other instanceof AxisError) { 00209 AxisError test = (AxisError) this; 00210 int result = test.compareTo((AxisError) other); 00211 if (result != 0) return result; 00212 } else return (other instanceof PointError) ? -1 : 1; 00213 } 00214 00215 // For dataset errors 00216 if (this instanceof DatasetError) { 00217 if (other instanceof DatasetError) { 00218 DatasetError test = (DatasetError) this; 00219 int result = test.compareTo((DatasetError) other); 00220 if (result != 0) return result; 00221 } else return 1; 00222 } 00223 00225 return 0; 00226 }
String toString | ( | ) |
String representation.
Reimplemented from Storeable.
Definition at line 234 of file Uncertainty.java.
Referenced by Uncertainty.toString().
00234 { 00235 return toString(0); 00236 }
String toString | ( | Integer | indentBy | ) |
Indented string representation.
Definition at line 240 of file Uncertainty.java.
References Uncertainty.getComment(), Uncertainty.getMinus(), Uncertainty.getNormType(), Uncertainty.getPlus(), Uncertainty.getSourceType(), Uncertainty.isSymmetric(), Storeable.log(), and Uncertainty.toString().
00240 { 00241 log().debug("Writing out error as a string"); 00242 StringBuffer s = new StringBuffer(); 00243 String indent = ""; 00244 for (int i = 0; i < indentBy; ++i) indent += " "; 00245 00246 //if (! hasZeroSize()) { 00247 s.append(indent); 00248 Double plusval = getPlus(); 00249 Double minusval = getMinus(); 00250 00251 String numFormat = "###.##"; 00252 // Use the number formatter to recalculate and display everything as a percentage 00253 if (getNormType() == ErrorNorm.PCT) { 00254 plusval /= 100; 00255 minusval /= 100; 00256 } 00257 if (getNormType() == ErrorNorm.FRAC || getNormType() == ErrorNorm.PCT) { 00258 numFormat += "%"; // multiplies by 100 and sticks "%" on the end 00259 } 00260 DecimalFormat numFormatter = new DecimalFormat(numFormat); 00261 if (isSymmetric()) { 00262 s.append("+- " + numFormatter.format(plusval)); 00263 } else { 00264 s.append("+ " + numFormatter.format(plusval)); 00265 s.append(" - " + numFormatter.format(minusval)); 00266 } 00267 s.append(" ("); 00268 //s.append(getNormType().toString()); 00269 //s.append(", "); 00270 s.append(getSourceType().toString()); 00271 s.append(")"); 00272 if (getComment() != null && getComment().length() != 0) { 00273 s.append(" [" + getComment() + "]"); 00274 } 00275 //} 00276 return s.toString(); 00277 }
Logger log | ( | ) | [package, inherited] |
Neat method to allow every class to get hold of a custom-named Logger.
Definition at line 14 of file Storeable.java.
Referenced by Uncertainty.compareTo(), Reference.compareTo(), PointError.compareTo(), Modification.compareTo(), Experiment.compareTo(), DatasetError.compareTo(), AxisError.compareTo(), Data.makeExample(), Data.makeExampleDataset(), Data.makeExampleExperiment(), Data.makeExamplePaper(), Data.makeExampleXAxes(), Data.makeExampleYAxes(), DatasetError.setNormType(), and Uncertainty.toString().