Esempio n. 1
0
        /// <summary>
        /// Ctor.
        /// </summary>
        /// <param name="Reynolds"></param>
        /// <param name="Schmidt"></param>
        /// <param name="EoS">Material law</param>
        /// <param name="PenaltyBase">C.f. Calculation of SIP penalty base, cf. Chapter 3 in
        /// K. Hillewaert, “Development of the discontinuous Galerkin method for high-resolution, large scale CFD and acoustics in industrial geometries”,
        /// Université catholique de Louvain, 2013.</param>
        /// <param name="BcMap">Boundary condition map</param>
        /// <param name="Mode">Equation type. Can be Temperature or MassFraction</param>
        /// <param name="Argument">The argument of the flux. Must be compatible with the DiffusionMode.</param>
        /// <param name="PenaltyLengthScales"></param>
        public SIPDiffusion(double Reynolds, double Schmidt, MaterialLaw EoS, double PenaltyBase, MultidimensionalArray PenaltyLengthScales, IncompressibleBoundaryCondMap BcMap, DiffusionMode Mode, string Argument)
        {
            this.m_Reynolds       = Reynolds;
            this.m_Schmidt        = Schmidt;
            this.EoS              = EoS;
            this.PenaltyBase      = PenaltyBase;
            this.BcMap            = BcMap;
            this.ArgumentFunction = BcMap.bndFunction[Argument];
            this.Mode             = Mode;
            this.Argument         = Argument;
            this.cj = PenaltyLengthScales;
            switch (BcMap.PhysMode)
            {
            case PhysicsMode.LowMach:
                this.m_ParameterOrdering = new string[] { VariableNames.Temperature0 };
                break;

            case PhysicsMode.Combustion:
                this.m_ParameterOrdering = new string[] { VariableNames.Temperature0, VariableNames.MassFraction0_0, VariableNames.MassFraction1_0, VariableNames.MassFraction2_0, VariableNames.MassFraction3_0 };
                break;

            default:
                throw new ApplicationException("Wrong physicsMode");
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Ctor.
 /// </summary>
 /// <param name="Reynolds"></param>
 /// <param name="Schmidt"></param>
 /// <param name="EoS">Material law</param>
 /// <param name="PenaltyBase">C.f. Calculation of SIP penalty base, cf. Chapter 3 in
 /// K. Hillewaert, “Development of the discontinuous Galerkin method for high-resolution, large scale CFD and acoustics in industrial geometries”,
 /// Université catholique de Louvain, 2013.</param>
 /// <param name="BcMap">Boundary condition map</param>
 /// <param name="Mode">Equation type. Can be Temperature or MassFraction</param>
 /// <param name="Argument">The argument of the flux. Must be compatible with the DiffusionMode.</param>
 /// <param name="PenaltyLengthScales"></param>
 public SIPDiffusion(double Reynolds, double Schmidt, MaterialLaw EoS, double PenaltyBase, MultidimensionalArray PenaltyLengthScales, IncompressibleBoundaryCondMap BcMap, DiffusionMode Mode, string Argument)
 {
     this.Reynolds         = Reynolds;
     this.Schmidt          = Schmidt;
     this.EoS              = EoS;
     this.PenaltyBase      = PenaltyBase;
     this.BcMap            = BcMap;
     this.ArgumentFunction = BcMap.bndFunction[Argument];
     this.Mode             = Mode;
     this.Argument         = Argument;
     this.cj = PenaltyLengthScales;
 }