public void VerifyAllEnums() { var acceleration = new Acceleration(1, AccelerationUnit.BaseUnit); var angle = new Angle(1, AngleUnit.BaseUnit); var angularAcceleration = new AngularAcceleration(1, AngularAccelerationUnit.BaseUnit); var area = new Area(1, AreaUnit.BaseUnit); var density = new MassDensity(1, MassDensityUnit.BaseUnit); var electricCurrent = new ElectricCurrent(1, ElectricCurrentUnit.BaseUnit); var electricResistance = new ElectricResistance(1, ElectricResistanceUnit.BaseUnit); var electricVoltage = new ElectricPotential(1, ElectricPotentialUnit.BaseUnit); var energy = new Energy(1, EnergyUnit.BaseUnit); var force = new Force(1, ForceUnit.BaseUnit); var frequency = new Frequency(1, FrequencyUnit.BaseUnit); var jerk = new Jerk(1, JerkUnit.BaseUnit); var length = new Length(1, LengthUnit.BaseUnit); var mass = new Mass(1, MassUnit.BaseUnit); var massFlowRate = new MassFlowRate(1, MassFlowRateUnit.BaseUnit); var momentum = new Momentum(1, MomentumUnit.BaseUnit); var numeric = new Numeric(1, NumericUnit.BaseUnit); var power = new Power(1, PowerUnit.BaseUnit); var pressure = new Pressure(1, PressureUnit.BaseUnit); var speed = new Speed(1, SpeedUnit.BaseUnit); var temperature = new Temperature(1, TemperatureUnit.BaseUnit); var time = new Time(1, TimeUnit.BaseUnit); var torque = new Torque(1, TorqueUnit.BaseUnit); var volume = new Volume(1, VolumeUnit.BaseUnit); var volumetricFlowRate = new VolumetricFlowRate(1, VolumetricFlowRateUnit.BaseUnit); }
public void ConvertToSi(Mass m, string dimension) { if (dimension != "kg") { if (dimension == "t") { m.Value *= 1000; } else if (dimension == "sl") { m.Value *= 14.6; } else if (dimension == "Ib") { m.Value *= 0.45; } else if (dimension == "g") { m.Value /= 1000; } else if (dimension == "mg") { m.Value /= 1000000000; } else { throw new IncorrectDimensionOfMassException(); } } }
public void Test_this (double massValue, double secondValue, double expectedValue) { var _mass = new Mass (MeasurementSystem.InternationalSystemOfUnits, massValue); var _second = new Mass (MeasurementSystem.InternationalSystemOfUnits, secondValue); var _sum = _mass + _second; Assert.AreEqual (expectedValue, _sum [MeasurementSystem.InternationalSystemOfUnits]); }
public void ConstructorIMass() { IMass m = new Mass(524.342); Mass m2 = new Mass(m); Assert.AreEqual(m, m2); }
public void ConstructorIMassRefInequality() { IMass m = new Mass(524.342); Mass m2 = new Mass(m); Assert.AreNotSame(m, m2); }
[Test] public void can_use_mass_volume_constructor() { Mass m = new Mass(10, MassUnit.Pounds); Volume v = new Volume(2, VolumeUnit.Gallons); var d = new Density(m, v); d.Mass.ShouldEqual(m); d.Volume.ShouldEqual(v); }
public void MassEquality() { Mass m1 = new Mass(524.342); Mass m2 = new Mass(524.342); Assert.AreEqual(m1, m2); }
public void MassBothInequality() { Mass m1 = new Mass(524.342); Mass m2 = new Mass(524.343); Assert.AreNotEqual(m1, m2); }
public void MassObjectToMzNegativeCharge() { Mass m1 = new Mass(1000); double mz = m1.ToMz(-2); Assert.AreEqual(498.99272353318798, mz); }
public void MassMonoisotopicInequality() { Mass m1 = new Mass(524.342); Mass m2 = new Mass(524.343); Assert.AreNotEqual(m1, m2); }
public void OpAddition() { var mass1 = new Mass(2000, MassUnit.Gram); var mass2 = new Mass(1, MassUnit.Kilogram); var expected = new Mass(3000, MassUnit.Gram); (mass1 + mass2).ShouldEqual(expected); (mass2 + mass1).ShouldEqual(expected); }
public Mass Convert(Mass from, MassUnit to) { if (from.Unit.Equals(to)) return new Mass(from.Amount, to); var tfs = new FromToConversion(from.Unit, to); if(!_knownConversions.ContainsKey(tfs)) throw new NotImplementedException("This conversion has not yet been implemented"); return new Mass(from.Amount * _knownConversions[tfs], to); }
private void pictureBox1_MouseClick(object sender, MouseEventArgs e) { Mass m = new Mass(e.Location.X, e.Location.Y, Int32.Parse(textBox1.Text)); lista.Add(m); reloadPicture(); //tu bedzie reloadPicture() z wyliczeniem kropek i potem linii reloadPotencjal(); pictureBox1.Refresh(); reloadBox(); }
public void OpInverseEquals() { var mass1 = new Mass(3000, MassUnit.Gram); var mass2 = new Mass(3, MassUnit.Kilogram); var mass3 = new Mass(4, MassUnit.Kilogram); (mass1 != mass2).ShouldBeFalse(); (mass2 != mass1).ShouldBeFalse(); (mass1 != mass3).ShouldBeTrue(); (mass3 != mass1).ShouldBeTrue(); }
public void OpGreaterThanOrEqual() { var mass1 = new Mass(3000, MassUnit.Gram); var mass2 = new Mass(3, MassUnit.Kilogram); var mass3 = new Mass(4, MassUnit.Kilogram); (mass1 >= mass3).ShouldBeFalse(); (mass3 >= mass1).ShouldBeTrue(); (mass1 >= mass2).ShouldBeTrue(); (mass2 >= mass1).ShouldBeTrue(); }
public void OpDivision() { var mass1 = new Mass(2000, MassUnit.Gram); var mass2 = new Mass(2, MassUnit.Kilogram); (mass1 / mass2).ShouldBeWithinEpsilonOf(1); (mass2 / mass1).ShouldBeWithinEpsilonOf(1); (mass1 / 2).ShouldEqual(new Mass(1000, MassUnit.Gram)); (mass2 / 2).ShouldEqual(new Mass(1, MassUnit.Kilogram)); }
public void Start() { m_hb=this; m_AS=(AudioSource)gameObject.GetComponent<AudioSource>(); m_PS=(ParticleSystem)gameObject.GetComponent<ParticleSystem>(); m_mass=(Mass)gameObject.GetComponent<Mass>(); m_curMax=m_baseMax; m_curRate=m_baseEmissionRate; sm_planetBonus=0; sm_score=0; }
public static Vector3 ApplyGravity(Mass body) { Vector3 totalForces = new Vector3 (); foreach (Mass m in m_Gravity.m_masses) { if (body != m) { Vector3 toVec = m.transform.position - body.transform.position; totalForces =totalForces+ Mathf.Sqrt(Mathf.Min(toVec.sqrMagnitude,Mathf.Pow(10,20))*(body.rigidbody.mass+m.rigidbody.mass))*toVec.normalized; // Debug.Log(m.name); // Debug.Log(totalForces+"+ Mathf.Sqrt("+toVec.sqrMagnitude+"*("+body.rigidbody.mass+"+"+m.rigidbody.mass+"))*"+toVec.normalized); } } // Debug.Log(body.name+totalForces); return totalForces; }
private static void Main(string[] args) { var vehicleMass = new Mass(2500, MassUnit.Pounds); var startSpeed = new Speed(72, SpeedUnit.MilesPerHour); var endSpeed = new Speed(0, SpeedUnit.MilesPerHour); var stoppingDistance = new Length(1234, LengthUnit.Foot); Acceleration deceleration = ((endSpeed * endSpeed) - (startSpeed * startSpeed)) / (2 * stoppingDistance); Force stoppingForceRequired = vehicleMass * deceleration; Console.WriteLine("The stopping force required is:"); Console.WriteLine("\t{0}", stoppingForceRequired.ToString(ForceUnit.Newtons, 3)); Console.WriteLine("\t{0}", stoppingForceRequired.ToString(ForceUnit.KilogramForce, 3)); Console.WriteLine("\t{0}", stoppingForceRequired.ToString(ForceUnit.PoundForce, 3)); Console.ReadLine(); }
public void OpEquals() { var mass1 = new Mass(3000, MassUnit.Gram); var mass2 = new Mass(3, MassUnit.Kilogram); var mass3 = new Mass(4, MassUnit.Kilogram); (mass1 == mass2).ShouldBeTrue(); (mass2 == mass1).ShouldBeTrue(); (mass1 == mass3).ShouldBeFalse(); (mass3 == mass1).ShouldBeFalse(); mass1.Equals(mass2) .ShouldBeTrue(); mass1.Equals((object)mass2) .ShouldBeTrue(); mass2.Equals(mass1) .ShouldBeTrue(); mass2.Equals((object)mass1) .ShouldBeTrue(); }
public SolverEventArgs(Population population,int generation,long evaluations,ReactiveList<BeamToCut> beams):base(population,generation,evaluations) { _totalCuttingMass = new Mass(0); _totalCuttingCost = new Currency(0); _totalWasteCost = new Currency(0); TotalToCut = 0; beams.ToList().ForEach(item => TotalToCut += item.TotalLength); foreach (var gene in Fittest.Genes) { var cutplan = (gene.ObjectValue as CutPlan); CutPlan.Add(cutplan); if (Debugger.IsAttached && cutplan.CutLength==2450) Debugger.Break(); _totalWaste += cutplan.IsRealWaste?cutplan.Waste:0 /*(cutplan.Waste == cutplan.StockLength && cutplan.IsRealWaste) ? 0 : cutplan.Waste*/; _totalStock += (cutplan.Waste == cutplan.StockLength && cutplan.IsRealWaste) ? 0 : cutplan.StockLength; _totalCut += cutplan.CutLength; _totalUncut += (cutplan.Waste == cutplan.StockLength && cutplan.IsRealWaste) ? cutplan.StockLength : 0; _totalCuttingMass += cutplan.TotalCutMass; _totalCuttingCost += cutplan.TotalCutCost; _totalWasteCost += cutplan.TotalWasteCost; } }
public void MassDividedByVolumeEqualsDensity() { Density density = Mass.FromKilograms(18) / Volume.FromCubicMeters(3); Assert.Equal(density, Density.FromKilogramsPerCubicMeter(6)); }
///// <summary> ///// cached inverse mass-matrix blocks for cut-cells ///// </summary> //Dictionary<SpeciesId, MassMatrixFactory.MassMatrixBlockContainer> InverseMassBlocks; /// <summary> /// computes the mass matrices for a given mapping and accumulates the mass matrix to some other matrix. /// </summary> public void AccMassMatrix <T>(T M, UnsetteledCoordinateMapping mapping, IDictionary <SpeciesId, IEnumerable <double> > _alpha, bool inverse = false) where T : IMutableMatrixEx // { using (new FuncTrace()) { var _basisS = mapping.BasisS.ToArray(); var ctx = _basisS[0].GridDat; int J = ctx.iLogicalCells.NoOfLocalUpdatedCells; //if (VariableAgglomerationSwitch == null) { // VariableAgglomerationSwitch = new bool[mapping.BasisS.Count]; // VariableAgglomerationSwitch.SetAll(true); //} else { // if (VariableAgglomerationSwitch.Length != mapping.BasisS.Count) // throw new ArgumentException(); //} //if(VariableAgglomerationSwitch.Any() && (agg == null)) { // throw new ArgumentException("Cell Agglomerator is required."); //} if (!M.RowPartitioning.EqualsPartition(mapping)) { throw new ArgumentException("Mismatch in row mapping."); } if (!M.ColPartition.EqualsPartition(mapping)) { throw new ArgumentException("Mismatch in column mapping."); } if (!_alpha.Keys.IsSubsetOf(this.AvailableSpecies)) { throw new ArgumentException("trying to obtain mass matrix for species that is not supported by this factory."); } foreach (var __alpha in _alpha.Values) { if (__alpha.Count() != _basisS.Length) { throw new ArgumentException("Number of alpha's must match number of variables/fields in mapping."); } } LevelSetTracker.LevelSetRegions regions = null;// XDGSpaceMetrics.LevelSetRegions; // compute the Mass-Blocks for the cut cells... // -------------------------------------------- int _MaxDeg = _basisS.Max(b => b.Degree); var RequestedSpecies = _alpha.Keys; UpdateBlocks(_MaxDeg, RequestedSpecies); Dictionary <SpeciesId, MassMatrixBlockContainer>[] invBlocks = null; if (inverse) { invBlocks = GetInverseMassMatrixBlocks(RequestedSpecies, mapping.BasisS.Select(b => b.Degree).ToArray()); //VariableAgglomerationSwitch = new bool[VariableAgglomerationSwitch.Length]; //VariableAgglomerationSwitch.SetAll(true); // we already took care about this in the 'GetInverseMassMatrixBlocks' } // set the matrix // -------------- for (int fld = 0; fld < _basisS.Length; fld++) // loop over Variables in mapping... // loop over species... { foreach (var species in _alpha.Keys) { double alpha = _alpha[species].ElementAt(fld); int[] jSub2jCell = this.MassBlocks[species].jSub2jCell; if (alpha != 0.0) { // properties of the basis XDGBasis Xbasis = _basisS[fld] as XDGBasis; Basis nonXbasis; Basis basis = _basisS[fld]; if (Xbasis != null) { nonXbasis = Xbasis.NonX_Basis; regions = Xbasis.Tracker.Regions; // compute species indices with respect to **actual** regions !!!! //if (!object.ReferenceEquals(Xbasis.Tracker, this.XDGSpaceMetrics.)) // throw new ArgumentException(); } else { nonXbasis = _basisS[fld]; } int N = nonXbasis.Length; // get Mass-Matrix subblock MultidimensionalArray Mass; MultidimensionalArray[] Mass_B4Agglom; if (!inverse) { Mass = this.MassBlocks[species].MassMatrixBlocks; //Mass_B4Agglom = this.MassBlocks[species].MassMatrixBlocks_B4Agglom; } else { Mass = invBlocks[fld][species].MassMatrixBlocks; Mass_B4Agglom = null; Debug.Assert(Mass.GetLength(1) == N); Debug.Assert(Mass.GetLength(2) == N); } // set diagonal element 1.0 in all cells of the subgrid // (later, we subtract 1.0 from the diagonal in cut cells) var speciesMask = XDGSpaceMetrics.LevelSetRegions.GetSpeciesMask(species); { foreach (int jCell in speciesMask.ItemEnum) { int iSpc = 0; if (Xbasis != null) { int NoOfSpc = regions.GetNoOfSpecies(jCell); iSpc = regions.GetSpeciesIndex(species, jCell); } int n0 = mapping.GlobalUniqueCoordinateIndex(fld, jCell, N * iSpc); for (int n = 0; n < N; n++) { M[n0 + n, n0 + n] += alpha; } } } // now, set then Non-Identity blocks in the cut cells var speciesBitMask = speciesMask.GetBitMask(); { int JSUB = jSub2jCell.Length; for (int jsub = 0; jsub < JSUB; jsub++) // loop over cut cells { int jCell = jSub2jCell[jsub]; if (!speciesBitMask[jCell]) { continue; } int iSpc = 0; if (Xbasis != null) { int NoOfSpc = regions.GetNoOfSpecies(jCell); iSpc = regions.GetSpeciesIndex(species, jCell); } var MassSub = Mass.ExtractSubArrayShallow(new int[] { jsub, 0, 0 }, new int[] { jsub - 1, N - 1, N - 1 }); //MultidimensionalArray MassSub; //if (VariableAgglomerationSwitch[fld] || (Mass_B4Agglom[jsub] == null)) { // // block with agglomeration // MassSub = Mass.ExtractSubArrayShallow(new int[] { jsub, 0, 0 }, new int[] { jsub - 1, N - 1, N - 1 }); //} else { // // block without agglomeration // Debug.Assert(VariableAgglomerationSwitch[fld] == false); // Debug.Assert(Mass_B4Agglom[jsub] != null); // MassSub = Mass_B4Agglom[jsub].ExtractSubArrayShallow(new int[] { 0, 0 }, new int[] { N - 1, N - 1 }); //} int i0 = mapping.GlobalUniqueCoordinateIndex(fld, jCell, N * iSpc); for (int n = 0; n < N; n++) // loop over rows (within block) { for (int m = 0; m < N; m++) // loop over columns (within block) { M[i0 + n, i0 + m] += alpha * MassSub[n, m] - (m == n ? alpha : 0.0); } } } } } } } //// cell-aglomeration //// ----------------- //if (inverse == true) // //throw new ApplicationException("todo: double-check with agglomeration"); // Console.WriteLine("todo: double-check with agglomeration"); //this.m_agglomerator.ManipulateMassMatrix_Mk2(M, mapping); } }
public static Mass Grains <T>(this T value) => Mass.FromGrains(Convert.ToDouble(value));
public static Mass Stone <T>(this T value) => Mass.FromStone(Convert.ToDouble(value));
/// <summary> /// Gets <see cref="Molarity" /> from <see cref="Density" />. /// </summary> public static Molarity ToMolarity(this Density density, Mass molecularWeight) { return(Density.ToMolarity(density, molecularWeight)); }
public void VolumeTimesDensityEqualsMass() { Mass mass = Volume.FromCubicMeters(2) * Density.FromKilogramsPerCubicMeter(3); Assert.Equal(mass, Mass.FromKilograms(6)); }
public static extern void MassTranslate(ref Mass mass, dReal x, dReal y, dReal z);
public static Force FromMassByAcceleration(Mass mass, Acceleration acceleration) { return(new Force(mass.Kilograms * acceleration.MeterPerSecondSquared)); }
public static extern void MassSetParameters(out Mass mass, dReal themass, dReal cgx, dReal cgy, dReal cgz, dReal i11, dReal i22, dReal i33, dReal i12, dReal i13, dReal i23);
public static extern void MassSetTrimesh(out Mass mass, dReal density, IntPtr g);
public static Mass Slugs <T>(this T value) => Mass.FromSlugs(Convert.ToDouble(value));
public static Mass Kilotonnes <T>(this T value) => Mass.FromKilotonnes(Convert.ToDouble(value));
public static Mass Kilopounds <T>(this T value) => Mass.FromKilopounds(Convert.ToDouble(value));
public static Mass operator /(Force force, Acceleration mass) { return(Mass.FromKilograms(force.Newtons / mass.MeterPerSecondSquared)); }
public static extern void BodySetMass(IntPtr body, ref Mass mass);
public static Force FromMassByAcceleration(Mass mass, double metersPerSecondSquared) { return(new Force(mass.Kilograms * metersPerSecondSquared)); }
public void EqualsReturnsFalseOnNull() { Mass kilogram = Mass.FromKilograms(1); Assert.False(kilogram.Equals(null)); }
private Length NearestPlanet(Mass stell_mass_ratio) { return(Length.FromAstronomicalUnits(0.3 * Math.Pow(stell_mass_ratio.SolarMasses, 1.0 / 3.0))); }
public static Mass Decagrams <T>(this T value) => Mass.FromDecagrams(Convert.ToDouble(value));
public void ParseMultiWordAbbreviations() { Assert.Equal(Mass.FromShortTons(333), Mass.Parse("333 short tn")); Assert.Equal(Mass.FromLongTons(333), Mass.Parse("333 long tn")); }
public static Mass Centigrams <T>(this T value) => Mass.FromCentigrams(Convert.ToDouble(value));
public static Mass ShortTons <T>(this T value) => Mass.FromShortTons(Convert.ToDouble(value));
public static Mass EarthMasses <T>(this T value) => Mass.FromEarthMasses(Convert.ToDouble(value));
public void EqualsReturnsFalseOnTypeMismatch() { Mass kilogram = Mass.FromKilograms(1); Assert.False(kilogram.Equals(new object())); }
public static Mass Ounces <T>(this T value) => Mass.FromOunces(Convert.ToDouble(value));
public void AccelerationTimesMassEqualsForce() { Force force = Acceleration.FromMeterPerSecondSquared(3) * Mass.FromKilograms(18); Assert.Equal(force, Force.FromNewtons(54)); }
public void MassDividedByTimeSpanEqualsMassFlow() { MassFlow massFlow = Mass.FromKilograms(18.0) / TimeSpan.FromSeconds(6); Assert.Equal(massFlow, MassFlow.FromKilogramsPerSecond(3.0)); }
public static Mass LongHundredweight <T>(this T value) => Mass.FromLongHundredweight(Convert.ToDouble(value));
public static Mass SolarMasses <T>(this T value) => Mass.FromSolarMasses(Convert.ToDouble(value));
public static extern void MassSetCylinderTotal(out Mass mass, dReal total_mass, int direction, dReal radius, dReal length);
public static Mass LongTons <T>(this T value) => Mass.FromLongTons(Convert.ToDouble(value));
public static extern void MassSetSphere(out Mass mass, dReal density, dReal radius);
public static Mass Megapounds <T>(this T value) => Mass.FromMegapounds(Convert.ToDouble(value));
public static extern void MassSetZero(out Mass mass);
public static Mass Megatonnes <T>(this T value) => Mass.FromMegatonnes(Convert.ToDouble(value));
public static extern void BodyGetMass(IntPtr body, out Mass mass);
public static Mass Milligrams <T>(this T value) => Mass.FromMilligrams(Convert.ToDouble(value));
public static extern void dMassSetSphereTotal(out Mass mass, dReal total_mass, dReal radius);
public static Mass Nanograms <T>(this T value) => Mass.FromNanograms(Convert.ToDouble(value));