simulations.experiments.faradaysLaw
Class MovingRecedingImagePotentialExperiment

java.lang.Object
  extended bysimulations.experiments.BaseExperiment
      extended bysimulations.experiments.faradaysLaw.MovingRecedingImagePotentialExperiment

public class MovingRecedingImagePotentialExperiment
extends BaseExperiment

Receeding Image experiment, consisting of a monopole appearing at t =0 above a conducting plane, using the method of Saslow. This object computes the evolution of the system and also generates an EMSource that computes the E&M fields of the system. The evolution is computed in terms of dimensionless variables and then converted to "real" units. This version of the program calculates the magnetic fields using the magnetic potential function instead of monopoles and line dipoles (see equation (8) of Liu and Belcher 2007).

Version:
1.0
Author:
John Belcher

Nested Class Summary
 class MovingRecedingImagePotentialExperiment.Motion
          Specifies the time derivative of the parmeters which describe the experiment at any time t.
 
Field Summary
 MovingRecedingImagePotentialAbove above
          the potential whose field vanishes for z < 0
 MovingRecedingImagePotentialBelow below
          the potential whose field vanishes for z > 0
private  EMCollection collection
          the collection of the monopole plus the two potential function
 MovingRecedingImagePotentialExperiment.Motion equations
          Define the evolution equations used by the RK4 integrator
 double H
          H = height of the monople above z = 0
private  RungeKuttaIntegration integrator
          define the integraton scheme used to numerically integrate the evolution equations in time
 MagneticMonopole mono
          the real magnetic monopole
 double offset
          offset is an overall time offset before the image charges start moving
 double q0
          q0 is the magnetic charge
 double t
          the time
 double v
          v is the horizontal speed of the monopole
 double v0
          v0 is the vertical speed of the receeding monopoles once they start receeding
 double zplane
          zplane is the location in z of the conducting thin sheet
 
Fields inherited from class simulations.experiments.BaseExperiment
eps, FieldMotionType, FieldType, FluidFlowSpeed, Fnorm, Fpower, numberSmallSteps
 
Constructor Summary
MovingRecedingImagePotentialExperiment(double H, double q0, double v0, double v, double zplane, double offset)
          Constructs an instance of the experiment using the given parameters.
 
Method Summary
 void ConstructEMSource()
          constructs the EM source consisting of a number of BaseObjects and adds them to the EMCollection for this experiment
 void Evolve(double dt)
          Evolves the experiment by a time step "dt" using an RK4 integrator by taking numberSmallSteps between t and t + dt, for accuracy.
 void Evolve(double dt, double maxStep)
          Evolve the experiment by a time step "dt" using an integrator.
 BaseObject getEMSource()
          An EMSource that represents the current experimental state that can be used to compute the current E&M fields.
 double getFlowSpeed(Vec3 r, Vec RegionFlow)
          Method to find the flow speed in a given region when we are determining that speed according to region.
 double getHue(double TargetHue, Vec3 r, Vec RegionColor)
          Method to find the hue in a given region when we are coloring according to region (Color Mode 4).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

H

public double H
H = height of the monople above z = 0


t

public double t
the time


offset

public double offset
offset is an overall time offset before the image charges start moving


zplane

public double zplane
zplane is the location in z of the conducting thin sheet


q0

public double q0
q0 is the magnetic charge


v0

public double v0
v0 is the vertical speed of the receeding monopoles once they start receeding


v

public double v
v is the horizontal speed of the monopole


mono

public MagneticMonopole mono
the real magnetic monopole


above

public MovingRecedingImagePotentialAbove above
the potential whose field vanishes for z < 0


below

public MovingRecedingImagePotentialBelow below
the potential whose field vanishes for z > 0


collection

private EMCollection collection
the collection of the monopole plus the two potential function


equations

public MovingRecedingImagePotentialExperiment.Motion equations
Define the evolution equations used by the RK4 integrator


integrator

private RungeKuttaIntegration integrator
define the integraton scheme used to numerically integrate the evolution equations in time

Constructor Detail

MovingRecedingImagePotentialExperiment

public MovingRecedingImagePotentialExperiment(double H,
                                              double q0,
                                              double v0,
                                              double v,
                                              double zplane,
                                              double offset)
Constructs an instance of the experiment using the given parameters.

Parameters:
H - the height of the monopole above z = 0
offset - the frame offset before image charges begin moving
q0 - the magnetic charge
v - the horizontal speed of the monopole
v0 - the speed of the receeding image
zplane - the height of the conducting plane above z = 0
Method Detail

ConstructEMSource

public void ConstructEMSource()
Description copied from class: BaseExperiment
constructs the EM source consisting of a number of BaseObjects and adds them to the EMCollection for this experiment

Specified by:
ConstructEMSource in class BaseExperiment

getEMSource

public BaseObject getEMSource()
An EMSource that represents the current experimental state that can be used to compute the current E&M fields. The real monopole is at rest at (0,0,H), the two image dipoles are initially at rest at (0,0,+H) (imageminus) and (0,0,-H) (imageplus) and then start moving up (imageminus) and up (imagrminud) the z-axis at frames > offsett

Specified by:
getEMSource in class BaseExperiment

Evolve

public void Evolve(double dt,
                   double maxStep)
Evolve the experiment by a time step "dt" using an integrator. The maximum integrator step size allowed is "maxStep". The state of the EMSource representing the system is updated to reflect the change.

Parameters:
maxStep - the maximum step allowed
dt - the time step

Evolve

public void Evolve(double dt)
Evolves the experiment by a time step "dt" using an RK4 integrator by taking numberSmallSteps between t and t + dt, for accuracy.

Specified by:
Evolve in class BaseExperiment

getHue

public double getHue(double TargetHue,
                     Vec3 r,
                     Vec RegionColor)
Method to find the hue in a given region when we are coloring according to region (Color Mode 4).

Specified by:
getHue in class BaseExperiment
Parameters:
TargetHue - This is the target hue from the renderer.
r - This is the vector postion of the point in the image.
RegionColor - This is the varous hues for the regions.
Returns:
The hue for the part of the image map at r.

getFlowSpeed

public double getFlowSpeed(Vec3 r,
                           Vec RegionFlow)
Method to find the flow speed in a given region when we are determining that speed according to region. This method is used when we have set experiment.FieldMotionType to one of either Constants.FIELD_MOTION_VREFIELD or Constants.FIELD_MOTION_VRBFIELD.

Specified by:
getFlowSpeed in class BaseExperiment
Parameters:
r - This is the vector postion of the point in the image.
RegionFlow - This is the flow speeds for the regions.
Returns:
The flow speed for the part of the image map at r.