hydrobricks
Loading...
Searching...
No Matches
IceContainer Class Reference
Inheritance diagram for IceContainer:
WaterContainer

Public Member Functions

 IceContainer (Brick *brick)
 
void ApplyConstraints (double timeStep) override
 
void SetNoMeltWhenSnowCover (const float *value)
 
void SetRelatedSnowpack (Snowpack *snowpack)
 
bool ContentAccessible () const override
 
- Public Member Functions inherited from WaterContainer
 WaterContainer (Brick *brick)
 
virtual bool IsValid (bool checkProcesses=true) const
 
virtual void Validate () const
 
void SubtractAmountFromDynamicContentChange (double change)
 
void AddAmountToDynamicContentChange (double change)
 
void AddAmountToStaticContentChange (double change)
 
void SetOutgoingRatesToZero ()
 
double BookIncomingFluxes (bool asStatic=false)
 
void ResetInputBooking ()
 
void Finalize ()
 
void Reset ()
 
void SaveAsInitialState ()
 
vecDoublePt GetDynamicContentChanges ()
 
bool HasMaximumCapacity () const noexcept
 
double GetMaximumCapacity () const
 
void SetMaximumCapacity (const float *value)
 
void SetAsInfiniteStorage ()
 
void SetAllowNegativeContent (bool allow=true)
 
bool AllowsNegativeContent () const
 
double GetContentWithChanges () const
 
double GetContentWithDynamicChanges () const
 
double GetContentWithoutChanges () const
 
double * GetContentPointer ()
 
void SetInitialState (double value)
 
void UpdateContent (double value)
 
double GetTargetFillingRatio () const
 
bool IsNotEmpty () const
 
bool HasOverflow () const
 
void LinkOverflow (Process *overflow)
 
void AttachFluxIn (Flux *flux)
 
void AttachFluxInOwned (std::unique_ptr< Flux > flux)
 
virtual double SumIncomingFluxes () const
 
double SumIncomingChangeRates () const
 
double SumIncomingAmounts () const
 
Brick * GetParentBrick () const
 
bool HasIncomingFluxes () const
 
bool IsInfiniteStorage () const
 
bool IsEmpty () const
 
bool HasParentBrick () const
 
bool HasInitialState () const
 

Member Function Documentation

◆ ApplyConstraints()

void IceContainer::ApplyConstraints ( double timeStep)
overridevirtual

Apply the constraints to the water container.

Parameters
timeSteptime step [s]

Reimplemented from WaterContainer.

◆ ContentAccessible()

bool IceContainer::ContentAccessible ( ) const
overridevirtual

Check if the water content is accessible.

Returns
true if the content (including pending changes) is greater than zero.

Reimplemented from WaterContainer.

◆ SetNoMeltWhenSnowCover()

void IceContainer::SetNoMeltWhenSnowCover ( const float * value)
inline

Set the option to not melt when snow cover is present.

Parameters
valuePointer to a float value. If the value is greater than 0, melting is disabled when snow cover is present.

◆ SetRelatedSnowpack()

void IceContainer::SetRelatedSnowpack ( Snowpack * snowpack)
inline

Set the related snowpack.

Parameters
snowpackPointer to a Snowpack object. This is used to check if there is snow cover present.

The documentation for this class was generated from the following files: