#pragma warning restore 649 /// <summary> /// creates heat equation related fields /// </summary> public void CreateHeatFields() { int D = this.GridData.SpatialDimension; this.Temperature = new XDGField(new XDGBasis(this.LsTrk, this.Control.FieldOptions[VariableNames.Temperature].Degree), VariableNames.Temperature); base.RegisterField(this.Temperature); this.ResidualHeat = new XDGField(this.Temperature.Basis, "ResidualHeat"); base.RegisterField(this.ResidualHeat); this.HeatFlux = new VectorField <XDGField>(D.ForLoop(d => new XDGField(new XDGBasis(this.LsTrk, this.Control.FieldOptions[VariableNames.HeatFluxVectorComponent(d)].Degree), VariableNames.HeatFluxVectorComponent(d)))); base.RegisterField(this.HeatFlux); if (this.Control.conductMode != ConductivityInSpeciesBulk.ConductivityMode.SIP) { this.ResidualAuxHeatFlux = new VectorField <XDGField>(D.ForLoop(d => new XDGField(new XDGBasis(this.LsTrk, this.Control.FieldOptions[VariableNames.HeatFluxVectorComponent(d)].Degree), VariableNames.ResidualAuxHeatFluxVectorComponent(d)))); base.RegisterField(this.ResidualAuxHeatFlux); } this.DisjoiningPressure = new SinglePhaseField(new Basis(this.GridData, this.Control.FieldOptions[VariableNames.Pressure].Degree), "DisjoiningPressure"); if (this.Control.DisjoiningPressureFunc != null) { DisjoiningPressure.ProjectField(this.Control.DisjoiningPressureFunc); } base.RegisterField(this.DisjoiningPressure); }