code: @Throws(IllegalNaNArgumentException.class)
  	public static double notNaN(final double value, @Nullable final String name) {
  		// most efficient check for NaN, see Double.isNaN(value))
  		if (value != value) {
  			throw new IllegalNaNArgumentException(name);
  		}
  		return value;
  	}
docs: Ensures that a double argument is not NaN (not a number).
  
  @see java.lang.Double#NaN
  
  @param value
  value which should not be NaN
  @param name
  name of object reference (in source code)
  @return the given double value
  @throws IllegalNaNArgumentException
  if the given argument {@code value} is NaN