/// <summary> /// Overwrites the memory of a XDG field with the reference data /// </summary> static public void OverwriteDGField(this TestingIO t, XDGField f) { var trk = f.Basis.Tracker; foreach (string spc in trk.SpeciesNames) { var fs = f.GetSpeciesShadowField(spc); t.OverwriteDGField(fs); } }
/// <summary> /// Adds an XDG field. /// </summary> public static void AddDGField(this TestingIO t, XDGField f) { var trk = f.Basis.Tracker; foreach (string spc in trk.SpeciesNames) { var fs = f.GetSpeciesShadowField(spc); SinglePhaseField fsFatClone = new SinglePhaseField(fs.Basis, fs.Identification); CellMask msk = trk.Regions.GetSpeciesMask(spc); fsFatClone.Acc(1.0, fs, msk); t.AddDGField(fsFatClone); } }