/// <summary> /// Create a unit for adding to the program. /// <para>The user should pass in the name of the unit, /// the gradient of the unit relative to the unit it is based on, /// the y-intercept of the unit relative to the unit it is based on, /// and the unit it is based on/modelled after.</para> /// </summary> /// <param name="name"></param> /// <param name="gradient"></param> /// <param name="intercept"></param> /// <param name="unitBase"></param> public Unit CreateUnitWithBase(string name, double gradient, double intercept, Unit unitBase) { double rGradient = unitBase.GetGradient(); double rIntercept = unitBase.GetIntercept(); return(new Unit(name, gradient * rGradient, intercept * rGradient + rIntercept)); }