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 15 of file Uncertainty.java.
Uncertainty | ( | ) |
Default constructor.
Definition at line 46 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 56 of file Uncertainty.java.
References Uncertainty.setMinus(), Uncertainty.setNormType(), Uncertainty.setPlus(), and Uncertainty.setSourceType().
00056 { 00057 setPlus( (plus != null) ? plus : 0.0 ); 00058 setMinus( (minus != null) ? minus : 0.0 ); 00059 setSourceType(sourcetype); 00060 setNormType(normtype); 00061 }
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 70 of file Uncertainty.java.
boolean isSymmetric | ( | ) |
Are the plus and minus errors symmetric?
Definition at line 81 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 87 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 98 of file Uncertainty.java.
References Uncertainty.getMinus(), Uncertainty.getNormType(), Uncertainty.getPlus(), Uncertainty.getSourceType(), and Uncertainty.Uncertainty().
Referenced by PointError.getAbsoluteError().
00098 { 00099 if (getNormType() == ErrorNorm.UNKNOWN) { 00100 throw new HDException("Attempted to get the absolute error from an unknown error type."); 00101 } 00102 00103 Double absplus = getPlus(); 00104 Double absminus = getMinus(); 00105 if (getNormType() != ErrorNorm.ABS) { 00106 if (getNormType() == ErrorNorm.FRAC) { 00107 absplus *= p.getValue(); 00108 absminus *= p.getValue(); 00109 } else if (getNormType() == ErrorNorm.PCT) { 00110 absplus *= (p.getValue() / 100.0); 00111 absminus *= (p.getValue() / 100.0); 00112 } 00113 } 00114 Uncertainty err = new Uncertainty(absplus, absminus, getSourceType(), ErrorNorm.ABS); 00115 return err; 00116 }
Double getPlus | ( | ) |
Get the upward error.
Definition at line 125 of file Uncertainty.java.
Referenced by 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 130 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
Double getMinus | ( | ) |
Get the downward error.
Definition at line 138 of file Uncertainty.java.
Referenced by 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 143 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
ErrorSource getSourceType | ( | ) |
Get the error source type (stat, sys, etc.
) as an enum.
Definition at line 151 of file Uncertainty.java.
Referenced by 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 156 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 163 of file Uncertainty.java.
Referenced by 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 167 of file Uncertainty.java.
Referenced by Uncertainty.Uncertainty().
String getComment | ( | ) |
Get the modification comment string.
Definition at line 174 of file Uncertainty.java.
Referenced by Uncertainty.toString().
Uncertainty setComment | ( | String | comment | ) |
int compareTo | ( | Uncertainty | other | ) |
Definition at line 187 of file Uncertainty.java.
References DatasetError.compareTo(), AxisError.compareTo(), PointError.compareTo(), and Storeable.log().
00187 { 00188 log().debug("Comparing errors..."); 00189 00190 // For point errors 00191 if (this instanceof PointError) { 00192 if (other instanceof PointError) { 00193 PointError test = (PointError) this; 00194 int result = test.compareTo((PointError) other); 00195 if (result != 0) return result; 00196 } else return 1; 00197 } 00198 00199 // For axis errors 00200 if (this instanceof AxisError) { 00201 if (other instanceof AxisError) { 00202 AxisError test = (AxisError) this; 00203 int result = test.compareTo((AxisError) other); 00204 if (result != 0) return result; 00205 } else return (other instanceof PointError) ? -1 : 1; 00206 } 00207 00208 // For dataset errors 00209 if (this instanceof DatasetError) { 00210 if (other instanceof DatasetError) { 00211 DatasetError test = (DatasetError) this; 00212 int result = test.compareTo((DatasetError) other); 00213 if (result != 0) return result; 00214 } else return 1; 00215 } 00216 00218 return 0; 00219 }
String toString | ( | ) |
String representation.
Reimplemented from Storeable.
Definition at line 227 of file Uncertainty.java.
Referenced by Uncertainty.toString().
00227 { 00228 return toString(0); 00229 }
String toString | ( | Integer | indentBy | ) |
Indented string representation.
Definition at line 233 of file Uncertainty.java.
References Uncertainty.getComment(), Uncertainty.getMinus(), Uncertainty.getNormType(), Uncertainty.getPlus(), Uncertainty.getSourceType(), Uncertainty.isSymmetric(), Storeable.log(), and Uncertainty.toString().
00233 { 00234 log().debug("Writing out error as a string"); 00235 StringBuffer s = new StringBuffer(); 00236 String indent = ""; 00237 for (int i = 0; i < indentBy; ++i) indent += " "; 00238 00239 //if (! hasZeroSize()) { 00240 s.append(indent); 00241 Double plusval = getPlus(); 00242 Double minusval = getMinus(); 00243 00244 String numFormat = "###.##"; 00245 // Use the number formatter to recalculate and display everything as a percentage 00246 if (getNormType() == ErrorNorm.PCT) { 00247 plusval /= 100; 00248 minusval /= 100; 00249 } 00250 if (getNormType() == ErrorNorm.FRAC || getNormType() == ErrorNorm.PCT) { 00251 numFormat += "%"; // multiplies by 100 and sticks "%" on the end 00252 } 00253 DecimalFormat numFormatter = new DecimalFormat(numFormat); 00254 if (isSymmetric()) { 00255 s.append("+- " + numFormatter.format(plusval)); 00256 } else { 00257 s.append("+ " + numFormatter.format(plusval)); 00258 s.append(" - " + numFormatter.format(minusval)); 00259 } 00260 s.append(" ("); 00261 //s.append(getNormType().toString()); 00262 //s.append(", "); 00263 s.append(getSourceType().toString()); 00264 s.append(")"); 00265 if (getComment() != null && getComment().length() != 0) { 00266 s.append(" [" + getComment() + "]"); 00267 } 00268 //} 00269 return s.toString(); 00270 }
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(), AxisError.setAxis(), DatasetError.setDataset(), DatasetError.setNormType(), PointError.setPoint(), and Uncertainty.toString().