using System; namespace Science.Physics.GeneralPhysics { /// /// Hydrogen /// public class Hydrogen { public Hydrogen() { } private int n = 1, l = 0, m = 0; private int from = 2, to = 1; public Photon EmitPhoton() { Photon gamma = new Photon(); gamma.Wavelength = 1.0/(Constant.RydbergConstant *(1.0/to/to - 1.0/from/from)); return gamma; } public int TransitonFrom { set{from=value;} } public int TransitonTo { set{to=value;} } public double HydrogenRadiusNanoMeter { get{return 0.0529*n*n;} } public double HydrogenEnergyElectronVolt { get{return -13.606/n/n;} } public int PrincipalQuantumNumber { get{return n;} set{n=value;} } public int OribitalQuantumNumber { get{return l;} set{l=value;} } public int OribitalMagneticQuantumNumber { get{return m;} set{m=value;} } public Calculus.Function GroundStateWaveFunction { get { F1s = new Calculus.Function(func1s); return F1s; } } private Calculus.Function F1s; private double func1s(double r) { return 1.0/Math.Sqrt(Math.PI*0.0529*0.0529*0.0529) *Math.Exp(-r/0.0529); } } }