/// <summary>
 /// Initializes a new instance of the <see cref="UnitWeightOfSolids"/> class.
 /// </summary>
 /// <param name="numericalValue">Decimal value used for calculations.</param>
 /// <param name="units">Measurement unit (ie g/cc).</param>
 public UnitWeightOfSolids(double numericalValue, UnitWeightUnits units)
     : base("𝛾_s", numericalValue, units)
 {
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="UnitWeightOfSolids"/> class.
 /// </summary>
 /// <param name="solidWeight">W_s in gamma_s=W_s/V_s.</param>
 /// <param name="solidVolume">V_s in gamma_s=W_s/V_s.</param>
 /// <param name="units">Measurement system to hold value in after initial calculation.</param>
 public UnitWeightOfSolids(WeightOfSolidMatter solidWeight, VolumeOfSolidMatter solidVolume, UnitWeightUnits units)
     : this(ConvertToUnits(new BaseUnitWeightScalar("𝛾", BaseWeightScalar.ConvertToUnits(solidWeight, WeightUnits.Kilograms).NumericValue / BaseVolumeScalar.ConvertToUnits(solidVolume, VolumeUnits.CubicMeters).NumericValue, UnitWeightUnits.KilogramPerMeterCubed), units).NumericValue, units)
 {
 }
Beispiel #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BaseUnitWeightScalar"/> class.
 /// </summary>
 /// <param name="symbol">LateX symbol for pretty print.</param>
 /// <param name="numericalValue">Decimal value for calculation.</param>
 /// <param name="units">Measurement unit (ie g/cc).</param>
 public BaseUnitWeightScalar(string symbol, double numericalValue, UnitWeightUnits units)
 {
     this.UnitOfMeasure = units;
     this.Symbol        = symbol;
     this.NumericValue  = numericalValue;
 }
Beispiel #4
0
        /// <summary>
        /// Unit Weight conversion function from Metric to Metric, Metric to English, or vice versa.
        /// </summary>
        /// <param name="toConvert">Original, operating, unit weight.</param>
        /// <param name="toConvertTo">Measurement unit to convert into (ie g/cc).</param>
        /// <returns>A new unit weight with correct type and numeric value.</returns>
        public static BaseUnitWeightScalar ConvertToUnits(BaseUnitWeightScalar toConvert, UnitWeightUnits toConvertTo)
        {
            if (toConvert.UnitOfMeasure == toConvertTo)
            {
                return(toConvert);
            }

            double newVal = toConvert.NumericValue;

            if (toConvert.UnitOfMeasure == UnitWeightUnits.GramPerCubicCentimeter && toConvertTo == UnitWeightUnits.KilogramPerMeterCubed)
            {
                newVal *= 1000.0;
            }
            else if (toConvert.UnitOfMeasure == UnitWeightUnits.GramPerCubicCentimeter && toConvertTo == UnitWeightUnits.PoundPerCubicFoot)
            {
                newVal *= 62.428;
            }
            else if (toConvert.UnitOfMeasure == UnitWeightUnits.KilogramPerMeterCubed && toConvertTo == UnitWeightUnits.GramPerCubicCentimeter)
            {
                newVal /= 1000.0;
            }
            else if (toConvert.UnitOfMeasure == UnitWeightUnits.KilogramPerMeterCubed && toConvertTo == UnitWeightUnits.PoundPerCubicFoot)
            {
                newVal /= 16.018;
            }
            else if (toConvert.UnitOfMeasure == UnitWeightUnits.PoundPerCubicFoot && toConvertTo == UnitWeightUnits.GramPerCubicCentimeter)
            {
                newVal /= 62.428;
            }
            else if (toConvert.UnitOfMeasure == UnitWeightUnits.PoundPerCubicFoot && toConvertTo == UnitWeightUnits.KilogramPerMeterCubed)
            {
                newVal *= 16.018;
            }

            BaseUnitWeightScalar toReturn = new BaseUnitWeightScalar(toConvert.Symbol, newVal, toConvertTo);

            return(toReturn);
        }
Beispiel #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Density"/> class.
 /// </summary>
 /// <param name="numericalValue">Decimal value to do calculations with.</param>
 /// <param name="units">Measurement system (ie g/cc).</param>
 public Density(double numericalValue, UnitWeightUnits units)
     : base("ρ", numericalValue, units)
 {
 }
Beispiel #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Density"/> class. Assumes g = 9.81 m/s^2.
 /// </summary>
 /// <param name="totalUnitWeight">gamma_t in rho=gamma_t/g.</param>
 /// <param name="units">Measurement system to hold value in after initial calculation.</param>
 public Density(TotalUnitWeight totalUnitWeight, UnitWeightUnits units)
     : this(ConvertToUnits(new BaseUnitWeightScalar("𝛾", ConvertToUnits(totalUnitWeight, UnitWeightUnits.KilogramPerMeterCubed).NumericValue / 9.81, UnitWeightUnits.KilogramPerMeterCubed), units).NumericValue, units)
 {
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="UnitWeightOfWater"/> class.
 /// </summary>
 /// <param name="waterWeight">W_w in gamma_w=W_w/V_w.</param>
 /// <param name="waterVolume">V_w in gamma_w=W_w/V_w.</param>
 /// <param name="units">Measurement system to hold value in after calculation.</param>
 public UnitWeightOfWater(WeightOfWater waterWeight, WaterVolume waterVolume, UnitWeightUnits units)
     : this(ConvertToUnits(new BaseUnitWeightScalar("𝛾", BaseWeightScalar.ConvertToUnits(waterWeight, WeightUnits.Kilograms).NumericValue / BaseVolumeScalar.ConvertToUnits(waterVolume, VolumeUnits.CubicMeters).NumericValue, UnitWeightUnits.KilogramPerMeterCubed), units).NumericValue, units)
 {
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="UnitWeightOfWater"/> class.
 /// </summary>
 /// <param name="numericalValue">Decimal value used for calculations.</param>
 /// <param name="units">Measurement unit (ie g/cc).</param>
 public UnitWeightOfWater(double numericalValue, UnitWeightUnits units)
     : base("𝛾_w", numericalValue, units)
 {
 }
Beispiel #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TotalUnitWeight"/> class.
 /// </summary>
 /// <param name="gravityOfSolids">G_s in ((G_s+Se)/(1+e))gamma_w.</param>
 /// <param name="saturation">S in ((G_s+Se)/(1+e))gamma_w.</param>
 /// <param name="voidRatio">e in ((G_s+Se)/(1+e))gamma_w.</param>
 /// <param name="unitWeightOfWater">gamma_w in ((G_s+Se)/(1+e))gamma_w.</param>
 /// <param name="units">Measurement unit to use after construction from formula (ie g/cc).</param>
 public TotalUnitWeight(SpecificGravityOfSolids gravityOfSolids, DegreeOfSaturation saturation, VoidRatio voidRatio, UnitWeightOfWater unitWeightOfWater, UnitWeightUnits units)
     : this(((gravityOfSolids.NumericValue + (saturation.NumericValue * voidRatio.NumericValue)) / (1 + voidRatio.NumericValue)) * ConvertToUnits(unitWeightOfWater, units).NumericValue, units)
 {
 }
Beispiel #10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TotalUnitWeight"/> class.
 /// </summary>
 /// <param name="totalWeight">W in gamma_t=W/V.</param>
 /// <param name="totalVolume">V in gamma_t=W/V.</param>
 /// <param name="units">Measurement unit to use after construction from formula (ie g/cc).</param>
 public TotalUnitWeight(TotalWeight totalWeight, TotalVolume totalVolume, UnitWeightUnits units)
     : this(ConvertToUnits(new BaseUnitWeightScalar("𝛾", BaseWeightScalar.ConvertToUnits(totalWeight, WeightUnits.Kilograms).NumericValue / BaseVolumeScalar.ConvertToUnits(totalVolume, VolumeUnits.CubicMeters).NumericValue, UnitWeightUnits.KilogramPerMeterCubed), units).NumericValue, units)
 {
 }
Beispiel #11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TotalUnitWeight"/> class.
 /// </summary>
 /// <param name="numericalValue">Decimal value to use in calculations.</param>
 /// <param name="units">Measurement unit (ie g/cc).</param>
 public TotalUnitWeight(double numericalValue, UnitWeightUnits units)
     : base("𝛾_t", numericalValue, units)
 {
 }