// Copyright (C) Stichting Deltares 2016. All rights reserved. // // This file is part of Ringtoets. // // Ringtoets is free software: you can redistribute it and/or modify // it under the terms of the GNU 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 General Public License for more details. // // You should have received a copy of the GNU 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.Collections.Generic; namespace Ringtoets.Piping.KernelWrapper.SubCalculator { /// /// Interface with operations for performing a heave sub calculation. /// public interface IHeaveCalculator { /// /// Sets the total thickness of the coverage layer. /// double DTotal { set; } /// /// Sets the phreatic level at the exit point. /// double HExit { set; } /// /// Sets the critical exit gradient. /// double Ich { set; } /// /// Sets the piezometric head at the exit point. /// double PhiExit { set; } /// /// Sets the piezometric head in the hinterland. /// double PhiPolder { set; } /// /// Sets the damping factor at the exit point. /// double RExit { set; } /// /// Sets the bottom level of the bottom most aquitard that is above the exit point's z-coordinate. /// double BottomLevelAquitardAboveExitPointZ { set; } /// /// Gets the vertical outflow gradient. /// double Gradient { get; } /// /// Gets the z-value. /// double Zh { get; } /// /// Gets the factor of safety. /// double FoSh { get; } /// /// Performs the heave calculation. /// void Calculate(); /// /// Performs the heave validation. /// /// A list of validation strings, or an empty list if there are no validation errors. List Validate(); } }