# File lib/eymiha/units/numeric_with_units.rb, line 100
    def approximately_equals?(value,epsilon=Numeric.epsilon)
      if derived?
        reduce.approximately_equals?(value,epsilon)
      elsif value.kind_of? NumericWithUnits
        if value.derived?
          approximately_equals?(value.reduce,epsilon)
        else
          align(value).numeric.approximately_equals?(value.numeric,epsilon)
        end
      elsif value.kind_of? Numeric
        numeric.approximately_equals?(value,epsilon)
      else
        raise UnitsException.new("units mismatch")
      end
    end