edu.bu.qsad.app.shooter
Class FxCoulomb

java.lang.Object
  |
  +--java.util.Observable
        |
        +--edu.bu.qsad.app.shooter.FxPotential
              |
              +--edu.bu.qsad.app.shooter.FxCoulomb
All Implemented Interfaces:
Fx, java.io.Serializable

public class FxCoulomb
extends FxPotential

A Coulomb Potential Function used in the Schrodinger Shooter. I just checked my notes, and here is what I think things should be: With length measured in multiples of the Bohr radius (Bohrs) and energy measured in multiples of the ionization energy of the hydrogen atom (Rydbergs), the radial SE is: { - d^2/dr^2 - l(l + 1)/r^2 - 2 Z/r - E } psi(r) = 0

1999-05-21. Still haven't gotten getPlotRange to work properly. If I overexxaggerate the range, then the eigenvalues aren't near the exact values we should be getting. If I underestimate, we don't get enough loops to compute.

See Also:
Serialized Form

Field Summary
protected  int l
           
protected  double z
           
 
Fields inherited from class edu.bu.qsad.app.shooter.FxPotential
energyRange, energyUnits, intersect, label, lengthUnits, xrange, yrange
 
Constructor Summary
FxCoulomb()
           
FxCoulomb(int l, double z)
           
 
Method Summary
static double[] computeIntersect(FxCoulomb f, double energy)
           
 double f(double r)
           
 javax.swing.JPanel getEditorPanel()
          Provide a component for editing the function parameters.
 double[] getEnergyRange()
          return the suggested range of energies for investigating this potential function.
 double[] getIntersect(double e)
          return the intersection of the potential function with the wavefunction at a given energy.
 int getL()
           
 double[] getXRange()
          The range of x values for computing the plot, the wavefunction, and the integral.
 double getZ()
           
 void reset()
          reset all properties to their default values.
 void setL(int i)
           
 void setParameter(java.lang.String key, java.lang.String value)
           
 void setZ(double d)
           
protected  void updateValues()
          whenever any of the properties are changed (using a set() method) make sure to update properties which are dependent upon it.
 
Methods inherited from class edu.bu.qsad.app.shooter.FxPotential
addEnergyLevel, clearEnergyLevels, getEnergyLevels, getEnergyUnits, getEquationIcon, getIcon, getLabel, getLengthUnits, getPlotRange, getProperties, getXMax, getXMin, getYRange, setCutoff, setEnergyUnits, setEquationIcon, setIcon, setLabel, setLengthUnits, setProperties, setXMax, setXMin
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

z

protected double z

l

protected int l
Constructor Detail

FxCoulomb

public FxCoulomb()

FxCoulomb

public FxCoulomb(int l,
                 double z)
Method Detail

reset

public void reset()
Description copied from class: FxPotential
reset all properties to their default values. override this method to reset default values based in the selected potential function, for example, to set width and height for the Square Well Potential.

Overrides:
reset in class FxPotential

updateValues

protected void updateValues()
Description copied from class: FxPotential
whenever any of the properties are changed (using a set() method) make sure to update properties which are dependent upon it. this is a convenience method which keeps this all in one place. override this for each subclass.

Overrides:
updateValues in class FxPotential

setParameter

public void setParameter(java.lang.String key,
                         java.lang.String value)
Overrides:
setParameter in class FxPotential

getZ

public double getZ()

setZ

public void setZ(double d)

getL

public int getL()

setL

public void setL(int i)

f

public double f(double r)

getEditorPanel

public javax.swing.JPanel getEditorPanel()
Description copied from class: FxPotential
Provide a component for editing the function parameters.

Overrides:
getEditorPanel in class FxPotential

getIntersect

public double[] getIntersect(double e)
Description copied from class: FxPotential
return the intersection of the potential function with the wavefunction at a given energy.

Overrides:
getIntersect in class FxPotential

getXRange

public double[] getXRange()
Description copied from class: FxPotential
The range of x values for computing the plot, the wavefunction, and the integral.

Overrides:
getXRange in class FxPotential

getEnergyRange

public double[] getEnergyRange()
Description copied from class: FxPotential
return the suggested range of energies for investigating this potential function.

Overrides:
getEnergyRange in class FxPotential

computeIntersect

public static final double[] computeIntersect(FxCoulomb f,
                                              double energy)