/// <summary>
        /// Initializes a new instance of the <see cref="SimulationParameter" /> class.
        /// </summary>
        /// <param name="output">A SimulationOutput that lists the desired outputs from the simulation and the format in which to report them..</param>
        /// <param name="runPeriod">A RunPeriod to describe the time period over which to run the simulation..</param>
        /// <param name="timestep">An integer for the number of timesteps per hour at which the energy calculation will be run. (default to 6).</param>
        /// <param name="simulationControl">A SimulationControl object that describes which types of calculations to run..</param>
        /// <param name="shadowCalculation">A ShadowCalculation object describing settings for the EnergyPlus Shadow Calculation..</param>
        /// <param name="sizingParameter">A SizingParameter object with criteria for sizing the heating and cooling system..</param>
        /// <param name="northAngle">A number between -360 and 360 for the north direction in degrees.This is the counterclockwise difference between the North and the positive Y-axis. 90 is West and 270 is East. Note that this is different than the convention used in EnergyPlus, which uses clockwise difference instead of counterclockwise difference. (default to 0D).</param>
        /// <param name="terrainType">Text for the terrain in which the model sits. This is used to determine the wind profile over the height of the rooms..</param>
        public SimulationParameter
        (
            // Required parameters
            SimulationOutput output = default, RunPeriod runPeriod = default, int timestep = 6, SimulationControl simulationControl = default, ShadowCalculation shadowCalculation = default, SizingParameter sizingParameter = default, double northAngle = 0D, TerrianTypes terrainType = TerrianTypes.City // Optional parameters
        ) : base()                                                                                                                                                                                                                                                                                            // BaseClass
        {
            this.Output            = output;
            this.RunPeriod         = runPeriod;
            this.Timestep          = timestep;
            this.SimulationControl = simulationControl;
            this.ShadowCalculation = shadowCalculation;
            this.SizingParameter   = sizingParameter;
            this.NorthAngle        = northAngle;
            this.TerrainType       = terrainType;

            // Set non-required readonly properties with defaultValue
            this.Type = "SimulationParameter";

            // check if object is valid, only check for inherited class
            if (this.GetType() == typeof(SimulationParameter))
            {
                this.IsValid(throwException: true);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SimulationParameter" /> class.
 /// </summary>
 /// <param name="type">type (default to &quot;SimulationParameter&quot;).</param>
 /// <param name="output">A SimulationOutput that lists the desired outputs from the simulation and the format in which to report them..</param>
 /// <param name="runPeriod">A RunPeriod to describe the time period over which to run the simulation..</param>
 /// <param name="timestep">An integer for the number of timesteps per hour at which the energy calculation will be run. (default to 6).</param>
 /// <param name="simulationControl">A SimulationControl object that describes which types of calculations to run..</param>
 /// <param name="shadowCalculation">A ShadowCalculation object describing settings for the EnergyPlus Shadow Calculation..</param>
 /// <param name="sizingParameter">A SizingParameter object with criteria for sizing the heating and cooling system..</param>
 public SimulationParameter(string type = "SimulationParameter", SimulationOutput output = default, RunPeriod runPeriod = default, int timestep = 6, SimulationControl simulationControl = default, ShadowCalculation shadowCalculation = default, SizingParameter sizingParameter = default)
 {
     // use default value if no "type" provided
     if (type == null)
     {
         this.Type = "SimulationParameter";
     }
     else
     {
         this.Type = type;
     }
     this.Output    = output;
     this.RunPeriod = runPeriod;
     // use default value if no "timestep" provided
     if (timestep == null)
     {
         this.Timestep = 6;
     }
     else
     {
         this.Timestep = timestep;
     }
     this.SimulationControl = simulationControl;
     this.ShadowCalculation = shadowCalculation;
     this.SizingParameter   = sizingParameter;
 }
Exemplo n.º 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="SimulationParameter" /> class.
        /// </summary>
        /// <param name="output">A SimulationOutput that lists the desired outputs from the simulation and the format in which to report them..</param>
        /// <param name="runPeriod">A RunPeriod to describe the time period over which to run the simulation..</param>
        /// <param name="timestep">An integer for the number of timesteps per hour at which the energy calculation will be run. (default to 6).</param>
        /// <param name="simulationControl">A SimulationControl object that describes which types of calculations to run..</param>
        /// <param name="shadowCalculation">A ShadowCalculation object describing settings for the EnergyPlus Shadow Calculation..</param>
        /// <param name="sizingParameter">A SizingParameter object with criteria for sizing the heating and cooling system..</param>
        /// <param name="northAngle">A number between -360 and 360 for the north direction in degrees.This is the counterclockwise difference between the North and the positive Y-axis. 90 is West and 270 is East. Note that this is different than the convention used in EnergyPlus, which uses clockwise difference instead of counterclockwise difference. (default to 0D).</param>
        /// <param name="terrainType">Text for the terrain in which the model sits. This is used to determine the wind profile over the height of the rooms..</param>
        public SimulationParameter
        (
            // Required parameters
            SimulationOutput output = default, RunPeriod runPeriod = default, int timestep = 6, SimulationControl simulationControl = default, ShadowCalculation shadowCalculation = default, SizingParameter sizingParameter = default, double northAngle = 0D, TerrianTypes terrainType = TerrianTypes.City // Optional parameters
        ) : base()                                                                                                                                                                                                                                                                                            // BaseClass
        {
            this.Output            = output;
            this.RunPeriod         = runPeriod;
            this.Timestep          = timestep;
            this.SimulationControl = simulationControl;
            this.ShadowCalculation = shadowCalculation;
            this.SizingParameter   = sizingParameter;
            this.NorthAngle        = northAngle;
            this.TerrainType       = terrainType;

            // Set non-required readonly properties with defaultValue
            this.Type = "SimulationParameter";
        }