jsci.physics
Class ClassicalParticle3D
- java.lang.Object
-
- jsci.physics.Particle
-
- jsci.physics.AbstractClassicalParticle
-
- jsci.physics.ClassicalParticle3D
-
- All Implemented Interfaces:
- java.io.Serializable
- Direct Known Subclasses:
- RigidBody3D
public class ClassicalParticle3D extends AbstractClassicalParticle
The ClassicalParticle3D class provides an object for encapsulating classical point particles that live in 3D.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description ClassicalParticle3D()Constructs a classical particle.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description ClassicalParticle3Daccelerate(double ax, double ay, double az, double dt)Accelerates this particle.ClassicalParticle3DapplyForce(double Fx, double Fy, double Fz, double dt)Applies a force to this particle.doubleenergy()Returns the kinetic energy.doublegetMass()AbstractDoubleVectorgetMomentum()AbstractDoubleVectorgetPosition()AbstractDoubleVectorgetVelocity()doublegetXMomentum()doublegetXPosition()doublegetXVelocity()doublegetYMomentum()doublegetYPosition()doublegetYVelocity()doublegetZMomentum()doublegetZPosition()doublegetZVelocity()ClassicalParticle3Dgravitate(ClassicalParticle3D p, double dt)Evolves two particles under their mutual gravitational attraction.ClassicalParticle3Dmove(double dt)Evolves this particle forward according to its kinematics.voidsetMass(double m)voidsetMomentum(double xMom, double yMom, double zMom)voidsetPosition(double xPos, double yPos, double zPos)voidsetVelocity(double xVel, double yVel, double zVel)voidsetXPosition(double xPos)voidsetYPosition(double yPos)voidsetZPosition(double zPos)doublespeed()ClassicalParticle3Dtranslate(double dt)Evolves this particle forward according to its linear kinematics.
-
-
-
Constructor Detail
-
ClassicalParticle3D
public ClassicalParticle3D()
Constructs a classical particle.
-
-
Method Detail
-
setMass
public void setMass(double m)
-
getMass
public double getMass()
- Specified by:
getMassin classAbstractClassicalParticle
-
setPosition
public void setPosition(double xPos, double yPos, double zPos)
-
getPosition
public AbstractDoubleVector getPosition()
- Specified by:
getPositionin classAbstractClassicalParticle
-
setXPosition
public void setXPosition(double xPos)
-
getXPosition
public double getXPosition()
-
setYPosition
public void setYPosition(double yPos)
-
getYPosition
public double getYPosition()
-
setZPosition
public void setZPosition(double zPos)
-
getZPosition
public double getZPosition()
-
setVelocity
public void setVelocity(double xVel, double yVel, double zVel)
-
getVelocity
public AbstractDoubleVector getVelocity()
- Specified by:
getVelocityin classAbstractClassicalParticle
-
getXVelocity
public double getXVelocity()
-
getYVelocity
public double getYVelocity()
-
getZVelocity
public double getZVelocity()
-
speed
public double speed()
- Overrides:
speedin classAbstractClassicalParticle
-
setMomentum
public void setMomentum(double xMom, double yMom, double zMom)
-
getMomentum
public AbstractDoubleVector getMomentum()
- Overrides:
getMomentumin classAbstractClassicalParticle
-
getXMomentum
public double getXMomentum()
-
getYMomentum
public double getYMomentum()
-
getZMomentum
public double getZMomentum()
-
energy
public double energy()
Returns the kinetic energy.- Overrides:
energyin classAbstractClassicalParticle
-
move
public ClassicalParticle3D move(double dt)
Evolves this particle forward according to its kinematics. This method changes the particle's position.- Returns:
- this.
-
translate
public ClassicalParticle3D translate(double dt)
Evolves this particle forward according to its linear kinematics. This method changes the particle's position.- Returns:
- this.
-
accelerate
public ClassicalParticle3D accelerate(double ax, double ay, double az, double dt)
Accelerates this particle. This method changes the particle's velocity. It is additive, that isaccelerate(a1, dt).accelerate(a2, dt)is equivalent toaccelerate(a1+a2, dt).- Returns:
- this.
-
applyForce
public ClassicalParticle3D applyForce(double Fx, double Fy, double Fz, double dt)
Applies a force to this particle. This method changes the particle's velocity. It is additive, that isapplyForce(F1, dt).applyForce(F2, dt)is equivalent toapplyForce(F1+F2, dt).- Returns:
- this.
-
gravitate
public ClassicalParticle3D gravitate(ClassicalParticle3D p, double dt)
Evolves two particles under their mutual gravitational attraction. This method changes the velocity of both particles.- Returns:
- this.
-
-
DMelt 3.0 © DataMelt by jWork.ORG