// Copyright (C) Stichting Deltares 2019. All rights reserved. // // This file is part of the Dam Engine. // // The Dam Engine is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see . // // All names, logos, and references to "Deltares" are registered trademarks of // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. using System; using System.Collections.Generic; using Deltares.DamEngine.Data.General; using Deltares.DamEngine.Data.General.Results; using Deltares.DamEngine.Data.Standard.Logging; namespace Deltares.DamEngine.Data.RegionalAssessmentResults { /// /// Class for results of one particular regional scenario per profile /// public class RegionalScenarioProfileJob: RegionalResult { private FailureMechanismSystemType failureMechanismType = FailureMechanismSystemType.StabilityInside; private DikeDrySensitivity dikeDrySensitivity = DikeDrySensitivity.None; private HydraulicShortcutType hydraulicShortcutType = HydraulicShortcutType.NoHydraulicShortcut; private UpliftType upliftType = UpliftType.NoUplift; private LoadSituation loadSituation = LoadSituation.Wet; private MStabModelType mstabModelOption; private PipingModelType pipingModelOption; private readonly SoilGeometryProbability soilGeometryProbability; private readonly Location location; private ScenarioType scenarioType = ScenarioType.Scenario01; private string baseFileName = ""; /// /// Initializes a new instance of the class. /// /// The location. /// The soil geometry probability. public RegionalScenarioProfileJob(Location location, SoilGeometryProbability soilGeometryProbability) { this.location = location; this.soilGeometryProbability = soilGeometryProbability; } /// /// Gets the location. /// /// /// The location. /// public Location Location { get { return location; } } /// /// The calculation category (constant value) /// public const string CalculationCategory = "Calculation"; /// /// Gets the name of the location. /// /// /// The name of the location. /// public string LocationName { get { return location.Name; } } /// /// Gets or sets the load situation. /// /// /// The load situation. /// public LoadSituation LoadSituation { get { return loadSituation; } set { loadSituation = value; } } /// /// Gets or sets the dike dry sensitivity. /// /// /// The dike dry sensitivity. /// public DikeDrySensitivity DikeDrySensitivity { get { return dikeDrySensitivity; } set { dikeDrySensitivity = value; } } /// /// Gets or sets the type of the hydraulic shortcut. /// /// /// The type of the hydraulic shortcut. /// public HydraulicShortcutType HydraulicShortcutType { get { return hydraulicShortcutType; } set { hydraulicShortcutType = value; } } /// /// Gets or sets the type of the uplift. /// /// /// The type of the uplift. /// public UpliftType UpliftType { get { return upliftType; } set { upliftType = value; } } /// /// Gets or sets the mstab model option. /// /// /// The mstab model option. /// public MStabModelType MstabModelOption { get { return mstabModelOption; } set { mstabModelOption = value; } } /// /// Gets or sets the piping model option. /// /// /// The piping model option. /// public PipingModelType PipingModelOption { get { return pipingModelOption; } set { pipingModelOption = value; } } /// /// Gets or sets the type of the scenario. /// /// /// The type of the scenario. /// public ScenarioType ScenarioType { get { return scenarioType; } set { scenarioType = value; } } /// /// Gets or sets the name of the base file. /// /// /// The name of the base file. /// public string BaseFileName { get { return baseFileName; } set { baseFileName = value; } } /// /// Gets or sets the type of the failure mechanism. /// /// /// The type of the failure mechanism. /// public FailureMechanismSystemType FailureMechanismType { get { return failureMechanismType; } set { failureMechanismType = value; } } /// /// Gets the soil geometry probability. /// /// /// The soil geometry probability. /// public SoilGeometryProbability SoilGeometryProbability { get { return soilGeometryProbability; } } /// /// Gets the name of the soil profile. /// /// /// The name of the soil profile. /// public string SoilProfileName { get { return soilGeometryProbability.SoilProfile1D.Name; } } /// /// Gets the soil profile probability. /// /// /// The soil profile probability. /// public double SoilProfileProbability { get { return soilGeometryProbability.Probability; } } /// /// Gets or sets the current specification. /// /// /// The current specification. /// public DamFailureMechanismeCalculationSpecification CurrentSpecification { get; set; } /// /// Gets or sets the calculation messages. /// /// /// The calculation messages. /// public List CalculationMessages { get; set;} /// /// Gets or sets the kernel data input. /// /// /// The kernel data input. /// public Object KernelDataInput { get; set; } /// /// Gets or sets the kernel data output. /// /// /// The kernel data output. /// public Object KernelDataOutput { get; set; } /// /// Gets or sets the dam kernel input. /// /// /// The dam kernel input. /// public Object DamKernelInput { get; set; } /// /// Gets or sets the results. /// /// /// The results. /// public List Results { get; set; } /// /// Gets or sets the HBP. /// /// /// The HBP. /// public double Hbp { get; set; } /// /// Gets or sets the LBP. /// /// /// The LBP. /// public double Lbp { get; set; } } }