public QQStateParam Clone() { QQStateParam param = new QQStateParam { Nullable_AccuracyAlpha = Nullable_AccuracyAlpha, Nullable_AccuracyWaveFunction = Nullable_AccuracyWaveFunction, Nullable_AggressivenessAlpha = Nullable_AggressivenessAlpha, Nullable_AggressivenessEnergy = Nullable_AggressivenessEnergy, Nullable_ColorState = Nullable_ColorState, Nullable_Energy_MeV = Nullable_Energy_MeV, Nullable_GammaDamp_MeV = Nullable_GammaDamp_MeV, Nullable_MaxRadius_fm = Nullable_MaxRadius_fm, Nullable_MaxShootingTrials = Nullable_MaxShootingTrials, Nullable_PotentialType = Nullable_PotentialType, Nullable_QuantumNumberL = Nullable_QuantumNumberL, Nullable_QuarkMass_MeV = Nullable_QuarkMass_MeV, Nullable_RunningCouplingType = Nullable_RunningCouplingType, Nullable_Sigma_MeV = Nullable_Sigma_MeV, Nullable_SoftScale_MeV = Nullable_SoftScale_MeV, Nullable_SpinCouplingStrength_MeV = Nullable_SpinCouplingStrength_MeV, Nullable_SpinCouplingRange_fm = Nullable_SpinCouplingRange_fm, Nullable_SpinState = Nullable_SpinState, Nullable_StepNumber = Nullable_StepNumber, Nullable_Tchem_MeV = Nullable_Tchem_MeV, Nullable_Tcrit_MeV = Nullable_Tcrit_MeV, Nullable_Temperature_MeV = Nullable_Temperature_MeV }; return(param); }
private QQStateParam GetQQStateParam() { QQStateParam param = new QQStateParam { AccuracyAlpha = AccuracyAlpha, AccuracyWaveFunction = AccuracyWaveFunction, AggressivenessAlpha = AggressivenessAlpha, AggressivenessEnergy = AggressivenessEnergy, ColorState = ColorState, Energy_MeV = Energy_MeV, GammaDamp_MeV = GammaDamp_MeV, MaxRadius_fm = MaxRadius_fm, MaxShootingTrials = MaxShootingTrials, PotentialType = PotentialType, QuantumNumberL = QuantumNumberL, QuarkMass_MeV = QuarkMass_MeV, RunningCouplingType = RunningCouplingType, Sigma_MeV = Sigma_MeV2, SoftScale_MeV = SoftScale_MeV, SpinCouplingRange_fm = SpinCouplingRange_fm, SpinCouplingStrength_MeV = SpinCouplingStrength_MeV, SpinState = SpinState, StepNumber = StepNumber, Tchem_MeV = Tchem_MeV, Tcrit_MeV = Tcrit_MeV, Temperature_MeV = Temperature_MeV }; return(param); }
public void CoulombWaveL2E1000() { QQStateParam param = GetCommonFreeStateParam(); param.QuantumNumberL = 2; QQFreeState freeState = new QQFreeState(param); freeState.SearchEigenfunction(); double maxDeviation = GetMaxDeviationFromCoulombWave(freeState); Assert.IsTrue(maxDeviation < 1e-4); }
private static QQBoundState CreateBoundState_HydrogenN2L1() { QQStateParam param = GetCommonBoundStateParam(); param.AccuracyWaveFunction = 1e-8; param.AggressivenessAlpha = 0.7; param.AggressivenessEnergy = 0.02; param.Energy_MeV = -341.205311278384; param.PotentialType = PotentialType.Tzero_NoString; param.QuantumNumberL = 1; param.SoftScale_MeV = 639.940673158918; param.StepNumber = 16000; return(new QQBoundState(param, 2)); }
private static QQBoundState CreateBoundState_HydrogenN1L0() { QQStateParam param = GetCommonBoundStateParam(); param.AccuracyWaveFunction = 1e-9; param.AggressivenessAlpha = 0.7; param.AggressivenessEnergy = 40; param.Energy_MeV = -390.02077042504118; param.PotentialType = PotentialType.Tzero_NoString; param.QuantumNumberL = 0; param.SoftScale_MeV = 1368.3765139843001; param.StepNumber = 30000; return(new QQBoundState(param, 1)); }
private static QQStateParam GetCommonBoundStateParam() { QQStateParam param = new QQStateParam { AccuracyAlpha = 1e-6, ColorState = ColorState.Singlet, GammaDamp_MeV = 0, MaxRadius_fm = 10, MaxShootingTrials = 5000, QuarkMass_MeV = 4800.90885593666, RunningCouplingType = RunningCouplingType.LOperturbative_Cutoff3, Tchem_MeV = 120, Tcrit_MeV = 160, Temperature_MeV = 0 }; return(param); }
/******************************************************************************************** * Private/protected static members, functions and properties ********************************************************************************************/ private static QQStateParam GetCommonFreeStateParam() { QQStateParam param = new QQStateParam { AccuracyAlpha = 1e-6, AccuracyWaveFunction = 1e-9, AggressivenessAlpha = 0.5, ColorState = ColorState.Octet, Energy_MeV = 1000, GammaDamp_MeV = 0, MaxRadius_fm = 10, PotentialType = PotentialType.Tzero_NoString, QuarkMass_MeV = 4800.90885593666, RunningCouplingType = RunningCouplingType.LOperturbative_Cutoff3, SoftScale_MeV = 1420, StepNumber = 20000, Tchem_MeV = 120, Tcrit_MeV = 160, Temperature_MeV = 0 }; return(param); }
public void FindQuarkMass() { QQStateParam param = GetCommonBoundStateParam(); param.AccuracyWaveFunction = 1e-9; param.AggressivenessAlpha = 0.5; param.AggressivenessEnergy = 40; param.Energy_MeV = -141.517335648066; param.PotentialType = PotentialType.Tzero; param.QuantumNumberL = 0; param.Sigma_MeV = 192000; param.SoftScale_MeV = 1542.07788957569; param.StepNumber = 20000; QQBoundState boundState = new QQBoundState(param, 1); double MassY1S_MeV = 9460.3; boundState.SearchQuarkMass(MassY1S_MeV); Assert.IsTrue( Math.Abs(boundState.Param.QuarkMass_MeV / param.QuarkMass_MeV - 1.0) < 1e-6); Assert.IsTrue(Math.Abs(boundState.BoundMass_MeV / MassY1S_MeV - 1.0) < 1e-6); }