JSci.physics
Class ClassicalParticle2D

java.lang.Object
  extended by JSci.physics.Particle
      extended by JSci.physics.ClassicalParticle2D
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
RigidBody2D

public class ClassicalParticle2D
extends Particle

The ClassicalParticle2D class provides an object for encapsulating classical particles that live in 2D.

Version:
1.0
Author:
Mark Hale
See Also:
Serialized Form

Field Summary
protected  double mass
          Mass.
protected  double vx
          Velocity coordinates.
protected  double vy
          Velocity coordinates.
protected  double x
          Position coordinates.
protected  double y
          Position coordinates.
 
Constructor Summary
ClassicalParticle2D()
          Constructs a classical particle.
 
Method Summary
 ClassicalParticle2D accelerate(double ax, double ay, double dt)
           
 ClassicalParticle2D applyForce(double Fx, double Fy, double dt)
           
 ClassicalParticle2D applyForce(Force2D F, double dt)
           
 ClassicalParticle2D collide(ClassicalParticle2D p)
          Collides this particle with another (elastic collision).
 double energy()
          Returns the kinetic energy.
 double getMass()
           
 double getXMomentum()
           
 double getXPosition()
           
 double getXVelocity()
           
 double getYMomentum()
           
 double getYPosition()
           
 double getYVelocity()
           
 ClassicalParticle2D gravitate(ClassicalParticle2D p, double dt)
           
 ClassicalParticle2D move(double dt)
          Evolves the particle forward according to its kinematics.
 void setMass(double m)
           
 void setMomentum(double xMom, double yMom)
           
 void setPosition(double xPos, double yPos)
           
 void setVelocity(double xVel, double yVel)
           
 void setXPosition(double xPos)
           
 void setYPosition(double yPos)
           
 double speed()
           
 ClassicalParticle2D translate(double dt)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mass

protected double mass
Mass.


x

protected double x
Position coordinates.


y

protected double y
Position coordinates.


vx

protected double vx
Velocity coordinates.


vy

protected double vy
Velocity coordinates.

Constructor Detail

ClassicalParticle2D

public ClassicalParticle2D()
Constructs a classical particle.

Method Detail

setMass

public void setMass(double m)

getMass

public double getMass()

setPosition

public void setPosition(double xPos,
                        double yPos)

setXPosition

public void setXPosition(double xPos)

getXPosition

public double getXPosition()

setYPosition

public void setYPosition(double yPos)

getYPosition

public double getYPosition()

setVelocity

public void setVelocity(double xVel,
                        double yVel)

getXVelocity

public double getXVelocity()

getYVelocity

public double getYVelocity()

speed

public double speed()

setMomentum

public void setMomentum(double xMom,
                        double yMom)

getXMomentum

public double getXMomentum()

getYMomentum

public double getYMomentum()

energy

public double energy()
Returns the kinetic energy.


move

public ClassicalParticle2D move(double dt)
Evolves the particle forward according to its kinematics.


translate

public ClassicalParticle2D translate(double dt)

accelerate

public ClassicalParticle2D accelerate(double ax,
                                      double ay,
                                      double dt)

applyForce

public ClassicalParticle2D applyForce(double Fx,
                                      double Fy,
                                      double dt)

applyForce

public ClassicalParticle2D applyForce(Force2D F,
                                      double dt)

gravitate

public ClassicalParticle2D gravitate(ClassicalParticle2D p,
                                     double dt)

collide

public ClassicalParticle2D collide(ClassicalParticle2D p)
Collides this particle with another (elastic collision). For the purposes of this method, the particles are assumed to have a finite size.