// Copyright (C) Stichting Deltares 2017. 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 Deltares.DamEngine.Data.Design;
using Deltares.DamEngine.Data.Geotechnics;
namespace Deltares.DamEngine.Data.General.Results
{
public class PipingDesignResults
{
private string resultMessage = "";
private double? upliftFactor;
private double? heaveFactor;
private double? blighFactor;
private double? blighHcritical;
private double? sellmeijer4ForcesFactor;
private double? sellmeijer4ForcesHcritical;
private double? sellmeijerVnkFactor;
private double? sellmeijerVnkHcritical;
private double? wti2017Factor;
private double? wti2017Hcritical;
private double? localExitPointX;
private UpliftSituation? upliftSituation;
private SurfaceLine2 redesignedSurfaceLine;
private readonly PipingModelType pipingModelType;
public PipingDesignResults(PipingModelType aPipingModelType)
{
pipingModelType = aPipingModelType;
}
///
/// Gets or sets the result message.
///
///
/// The result message.
///
public string ResultMessage
{
get
{
return resultMessage;
}
set
{
resultMessage = value;
}
}
public double? SafetyFactor()
{
switch (pipingModelType)
{
case PipingModelType.Bligh:
return blighFactor;
case PipingModelType.SellmeijerVnk:
return sellmeijerVnkFactor;
case PipingModelType.Sellmeijer4Forces:
return sellmeijer4ForcesFactor;
case PipingModelType.Wti2017:
return wti2017Factor;
default:
return null;
}
}
///
/// Gets or sets the uplift factor.
///
///
/// The uplift factor.
///
public double? UpliftFactor
{
get
{
return upliftFactor;
}
set
{
upliftFactor = value;
}
}
///
/// Gets or sets the heave factor.
///
///
/// The heave factor.
///
public double? HeaveFactor
{
get
{
return heaveFactor;
}
set
{
heaveFactor = value;
}
}
///
/// Gets or sets the bligh factor.
///
///
/// The bligh factor.
///
public double? BlighFactor
{
get
{
return blighFactor;
}
set
{
blighFactor = value;
}
}
///
/// Gets or sets the bligh hcritical.
///
///
/// The bligh hcritical.
///
public double? BlighHcritical
{
get
{
return blighHcritical;
}
set
{
blighHcritical = value;
}
}
///
/// Gets or sets the sellmeijer4 forces factor.
///
///
/// The sellmeijer4 forces factor.
///
public double? Sellmeijer4ForcesFactor
{
get
{
return sellmeijer4ForcesFactor;
}
set
{
sellmeijer4ForcesFactor = value;
}
}
///
/// Gets or sets the sellmeijer4 forces hcritical.
///
///
/// The sellmeijer4 forces hcritical.
///
public double? Sellmeijer4ForcesHcritical
{
get
{
return sellmeijer4ForcesHcritical;
}
set
{
sellmeijer4ForcesHcritical = value;
}
}
///
/// Gets or sets the sellmeijer VNK factor.
///
///
/// The sellmeijer VNK factor.
///
public double? SellmeijerVnkFactor
{
get
{
return sellmeijerVnkFactor;
}
set
{
sellmeijerVnkFactor = value;
}
}
///
/// Gets or sets the sellmeijer VNK hcritical.
///
///
/// The sellmeijer VNK hcritical.
///
public double? SellmeijerVnkHcritical
{
get
{
return sellmeijerVnkHcritical;
}
set
{
sellmeijerVnkHcritical = value;
}
}
///
/// Gets or sets the wti2017 factor.
///
///
/// The wti2017 factor.
///
public double? Wti2017Factor
{
get
{
return wti2017Factor;
}
set
{
wti2017Factor = value;
}
}
///
/// Gets or sets the wti2017 hcritical.
///
///
/// The wti2017 hcritical.
///
public double? Wti2017Hcritical
{
get
{
return wti2017Hcritical;
}
set
{
wti2017Hcritical = value;
}
}
///
/// Gets or sets the local exit point x.
///
///
/// The local exit point x.
///
public double? LocalExitPointX
{
get
{
return localExitPointX;
}
set
{
localExitPointX = value;
}
}
///
/// Gets or sets the uplift situation.
///
///
/// The uplift situation.
///
public UpliftSituation? UpliftSituation
{
get
{
return upliftSituation;
}
set
{
upliftSituation = value;
}
}
///
/// Gets or sets the redesigned surface line.
///
///
/// The redesigned surface line.
///
public SurfaceLine2 RedesignedSurfaceLine
{
get
{
return redesignedSurfaceLine;
}
set
{
redesignedSurfaceLine = value;
}
}
}
}