public static IEnumerable <SolPoint> CoolIntegration(Sph2D_improoveIntegr sph) { if (!(options.diffRo && options.diffE && options.diffFullE)) { throw new Exception("неправильные частицы!"); } double t = sph.TimeSynch; Vector x = sph.Rebuild(sph.TimeSynch); int n = x.Length; // Output initial point yield return(new SolPoint(t, x.Clone())); while (true) // Can produce any number of solution points { yield return(sph.StepUpNplus1(dt)); } }
public static IEnumerable <SolPoint> CoolIntegration(IEnumerable <GasParticleVer3> particles, IEnumerable <IGasParticleVer3> wall) { var sph = new Sph2D_improoveIntegr(particles, wall); return(CoolIntegration(sph)); }