using System; namespace Science.Physics.GeneralPhysics { /// /// TotalTorque /// public class TotalTorque : Vector { private void SetDim() { this.DimensionMass = 1; this.DimensionLength = 2; this.DimensionTime = -2; } private double tx = 0.0, ty = 0.0, tz = 0.0; private Torque[] decomposedTorque; private int numberOfDecomposedTorques; public TotalTorque(Torque[] tau) { SetDim(); decomposedTorque = tau; numberOfDecomposedTorques = tau.Length; } private void FindComponent() { tx = 0.0; ty = 0.0; tz = 0.0; for(int i = 0; i < decomposedTorque.Length; i++) { tx += decomposedTorque[i].X; ty += decomposedTorque[i].Y; tz += decomposedTorque[i].Z; } } public double J { get{FindComponent(); return Math.Sqrt(tx*tx+ty*ty+tz*tz);} } public override double X { get{FindComponent(); return tx;} set{tx=value;} } public override double Y { get{FindComponent(); return ty;} set{ty=value;} } public override double Z { get{FindComponent(); return tz;} set{tz=value;} } public Torque[] DecomposedTorque { get{return decomposedTorque;} } public int NumberOfDecomposedTorques { get{return numberOfDecomposedTorques;} } public override string ToString() { return base.ToString() + "(Nm)"; } } }