CoastalME (Coastal Modelling Environment)
Simulates the long-term behaviour of complex coastlines
Loading...
Searching...
No Matches
cell.h
Go to the documentation of this file.
1
13
14#ifndef CELL_H
15#define CELL_H
16/*===============================================================================================================================
17
18This file is part of CoastalME, the Coastal Modelling Environment.
19
20CoastalME 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.
21
22This 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.
23
24You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
25
26===============================================================================================================================*/
27#include <vector>
28using std::vector;
29
30#include "cme.h"
31#include "cell_landform.h"
32#include "cell_layer.h"
33#include "raster_grid.h"
34
35class CGeomRasterGrid; // Forward declaration
36
38{
39 friend class CSimulation;
40
41private:
44
47
50
53
56
59
60 // //! TODO 007 What is this used for?
61 // bool m_bCheckCell;
62
65
68
71
74
77
80
83
86
89
92
95
98
101
104
107
110
113
116
119
122
125
128
131
134
137
140
143
146
149
152
155
158
161
164
167
170
173
176
179
182
185
188
191
194
197
200
203
206
209
210 // Initialize these as empty vectors
212 vector<CRWCellLayer> m_VLayerAboveBasement;
213
215 vector<double> m_VdAllHorizonTopElev;
216
217protected:
218
219public:
221
222 CGeomCell();
223 ~CGeomCell(void);
224
225 void SetInContiguousSea(void);
226 bool bIsInContiguousSea(void) const;
227
228 void SetInContiguousFlood(void);
229 void UnSetInContiguousFlood(void);
230 void SetFloodBySetupSurge(void);
231 bool bIsFloodBySetupSurge(void) const;
232 void SetFloodBySetupSurgeRunup(void);
233 bool bIsFloodBySetupSurgeRunup(void) const;
234 bool bIsInContiguousSeaArea(void) const;
235
236 void SetInActiveZone(bool const);
237 bool bIsInActiveZone(void) const;
238 bool bPotentialPlatformErosion(void) const;
239 // bool bActualPlatformErosion(void) const;
240 void SetAsCoastline(bool const);
241 bool bIsCoastline(void) const;
242 void SetAsFloodLine(bool const);
243 bool bIsFloodLine(void) const;
244
245 void SetProfileID(int const);
246 int nGetProfileID(void) const;
247 bool bIsProfile(void) const;
248
249 void SetShadowZoneBoundary(void);
250 bool bIsShadowZoneBoundary(void) const;
251
252 void SetBoundingBoxEdge(int const);
253 int nGetBoundingBoxEdge(void) const;
254 bool bIsBoundingBoxEdge(void) const;
255
256 void SetPossibleCoastStartCell(void);
257 bool bIsPossibleCoastStartCell(void) const;
258
259 void SetPossibleFloodStartCell(void);
260 bool bIsPossibleFloodStartCell(void) const;
261
262 void SetPolygonID(int const);
263 int nGetPolygonID(void) const;
264
266
267 void SetWaveFlood(void);
268 bool bIsElevLessThanWaterLevel(void) const;
269
270 void SetCheckCell(void);
271 bool bIsCellCheck(void) const;
272
273 void SetCheckFloodCell(void);
274 void UnSetCheckFloodCell(void);
275 bool bIsCellFloodCheck(void) const;
276
277 void SetLocalConsSlope(double const);
278 double dGetLocalConsSlope(void) const;
279
280 void SetBasementElev(double const);
281 double dGetBasementElev(void) const;
282 bool bBasementElevIsMissingValue(void) const;
283
284 // double dGetVolEquivSedTopElev(void) const;
285 double dGetSedimentTopElev(void) const;
286 double dGetSedimentPlusInterventionTopElev(void) const;
287 double dGetOverallTopElev(void) const;
288
289 bool bIsInundated(void) const;
290 double dGetThisIterSWL(void) const;
291 double dGetThisIterTotWaterLevel(void) const;
292 // bool bIsSeaIncBeach(void) const;
293 void SetSeaDepth(void);
294 double dGetSeaDepth(void) const;
295 void InitCell(void);
296 double dGetTotSeaDepth(void) const;
297
298 void SetWaveHeight(double const);
299 double dGetWaveHeight(void) const;
300 double dGetTotWaveHeight(void) const;
301 void SetWaveAngle(double const);
302 double dGetWaveAngle(void) const;
303 double dGetTotWaveAngle(void) const;
304
305 void SetCellDeepWaterWaveHeight(double const);
306 double dGetCellDeepWaterWaveHeight(void) const;
307 void SetCellDeepWaterWaveAngle(double const);
308 double dGetCellDeepWaterWaveAngle(void) const;
309 void SetCellDeepWaterWavePeriod(double const);
310 double dGetCellDeepWaterWavePeriod(void) const;
311
313
314 void SetBeachProtectionFactor(double const);
315 double dGetBeachProtectionFactor(void) const;
316
317 void SetSuspendedSediment(double const);
318 void AddSuspendedSediment(double const);
319 double dGetSuspendedSediment(void) const;
320 double dGetTotSuspendedSediment(void) const;
321
322 int nGetTopNonZeroLayerAboveBasement(void) const;
323 int nGetTopLayerAboveBasement(void) const;
324
325 double dGetConsSedTopForLayerAboveBasement(int const) const;
327 void AppendLayers(int const);
328 void CalcAllLayerElevsAndD50(void);
329 int nGetLayerAtElev(double const) const;
330 double dCalcLayerElev(const int);
331
332 double dGetTotConsFineThickConsiderNotch(void) const;
333 double dGetTotUnconsFine(void) const;
334 double dGetTotConsSandThickConsiderNotch(void) const;
335 double dGetTotUnconsSand(void) const;
336 double dGetTotConsCoarseThickConsiderNotch(void) const;
337 double dGetTotUnconsCoarse(void) const;
338
339 double dGetTotConsThickness(void) const;
340 double dGetTotUnconsThickness(void) const;
341 double dGetTotAllSedThickness(void) const;
342
343 void SetPotentialPlatformErosion(double const);
344 double dGetPotentialPlatformErosion(void) const;
345 double dGetTotPotentialPlatformErosion(void) const;
346
347 void SetActualPlatformErosion(double const);
348 double dGetActualPlatformErosion(void) const;
349 double dGetTotActualPlatformErosion(void) const;
350
351 void IncrCliffCollapseErosion(double const, double const, double const);
352 double dGetThisIterCliffCollapseErosionFine(void) const;
353 double dGetThisIterCliffCollapseErosionSand(void) const;
355 double dGetTotCliffCollapseFine(void) const;
356 double dGetTotCliffCollapseSand(void) const;
357 double dGetTotCliffCollapseCoarse(void) const;
358
359 void AddSandTalusDeposition(double const);
361 double dGetTotSandTalusDeposition(void) const;
362 void AddCoarseTalusDeposition(double const);
364 double dGetTotCoarseTalusDeposition(void) const;
365
366 void SetPotentialBeachErosion(double const);
367 double dGetPotentialBeachErosion(void) const;
368 double dGetTotPotentialBeachErosion(void) const;
369 void SetActualBeachErosion(double const);
370 double dGetActualBeachErosion(void) const;
371 double dGetTotActualBeachErosion(void) const;
372 // bool bActualBeachErosionThisIter(void) const;
373
374 void IncrBeachDeposition(double const);
375 double dGetBeachDeposition(void) const;
376 double dGetTotBeachDeposition(void) const;
377 // bool bBeachDepositionThisIter(void) const;
378
379 bool bBeachErosionOrDepositionThisIter(void) const;
380
381 double dGetUnconsD50(void) const;
382
383 void SetInterventionClass(int const);
384 int nGetInterventionClass(void) const;
385 void SetInterventionHeight(double const);
386 double dGetInterventionHeight(void) const;
387 double dGetInterventionTopElev(void) const;
388
389 void SetShadowZoneNumber(int const);
390 int nGetShadowZoneNumber(void) const;
391 bool bIsinThisShadowZone(int const) const;
392 bool bIsinAnyShadowZone(void) const;
393 void SetDownDriftZoneNumber(int const);
394 int nGetDownDriftZoneNumber(void) const;
395};
396#endif // CELL_H
Contains CRWCellLandform definitions.
Contains CRWCellLayer definitions.
double m_dTotActualPlatformErosion
Total depth of sediment actually eroded from the shore platform.
Definition cell.h:151
double dGetTotCliffCollapseFine(void) const
Returns the running total depth of fine-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:982
void SetCellDeepWaterWavePeriod(double const)
Sets the deep water wave Period on this cell.
Definition cell.cpp:920
double dGetTotWaveHeight(void) const
Returns the total wave height on this cell.
Definition cell.cpp:871
void SetInContiguousFlood(void)
Set this cell as in the contiguous runup flood area.
Definition cell.cpp:126
double dGetThisIterCliffCollapseErosionFine(void) const
Returns the depth of this-timestep fine-sized sediment cliff collapse on this cell.
Definition cell.cpp:964
double m_dTotTalusCoarseDeposition
Total depth of unconsolidated coarse sediment deposited as a result of cliff collapse.
Definition cell.h:181
double dGetTotCoarseTalusDeposition(void) const
Returns the total depth of coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1032
double m_dTotPotentialPlatformErosion
Total depth of sediment eroded from the shore platform, if no supply-limitation.
Definition cell.h:145
int m_nBoundingBoxEdge
If this cell is an edge (or bounding box) cell, this specifies the edge.
Definition cell.h:82
double m_dWaveAngle
Wave orientation.
Definition cell.h:115
double dGetTotPotentialPlatformErosion(void) const
Get total potential (unconstrained) shore platform erosion.
Definition cell.cpp:772
bool bIsinAnyShadowZone(void) const
Returns true if this cell is in any shadow zone, false otherwise.
Definition cell.cpp:305
double dGetTotConsFineThickConsiderNotch(void) const
Returns the total thickness of fine consolidated sediment on this cell, minus the depth-equivalent of...
Definition cell.cpp:588
bool bIsFloodBySetupSurge(void) const
Is this cell flooded by setup surge?
Definition cell.cpp:144
bool m_bCheckFloodCell
TODO 007 What is this used for?
Definition cell.h:64
void CalcAllLayerElevsAndD50(void)
For this cell, calculates the elevation of the top of every layer, and the d50 for the topmost uncons...
Definition cell.cpp:699
int nGetTopLayerAboveBasement(void) const
Returns the index of the topmost sediment layer (layer 0 being the one just above basement),...
Definition cell.cpp:488
double dCalcLayerElev(const int)
For this cell, calculates the elevation of the top of a given layer.
Definition cell.cpp:747
int nGetShadowZoneNumber(void) const
Gets the number of the shadow zone that this cell is in.
Definition cell.cpp:290
void SetWaveHeight(double const)
Sets the wave height on this cell, also increments the total wave height.
Definition cell.cpp:855
bool bIsShadowZoneBoundary(void) const
Returns a flag which shows whether this cell is a shadow zone boundary.
Definition cell.cpp:186
double dGetCellDeepWaterWavePeriod(void) const
Returns the deep water wave period on this cell.
Definition cell.cpp:926
void InitCell(void)
Initialise values for this cell.
Definition cell.cpp:803
double dGetCellDeepWaterWaveAngle(void) const
Returns the deep water wave orientation on this cell.
Definition cell.cpp:914
bool bBeachErosionOrDepositionThisIter(void) const
Returns true only if this cell has had no deposition or erosion this timestep.
Definition cell.cpp:1107
double dGetTotPotentialBeachErosion(void) const
Get total potential (supply-unconstrained) beach erosion.
Definition cell.cpp:1051
bool bIsFloodBySetupSurgeRunup(void) const
Is this cell flooded by setup surge runup?
Definition cell.cpp:156
void SetInActiveZone(bool const)
Sets a flag to show whether this cell is in the active zone.
Definition cell.cpp:168
double dGetPotentialBeachErosion(void) const
Get potential (unconstrained) beach erosion.
Definition cell.cpp:1045
bool bIsInContiguousSea(void) const
Is this a sea cell?
Definition cell.cpp:120
double m_dBeachProtectionFactor
Only meaningful if in zone of platform erosion. 0 is fully protected; 1 = no protection.
Definition cell.h:133
bool m_bInContiguousSea
Switch to indicate if this is a sea cell, contiguous with other sea cells.
Definition cell.h:43
bool bIsBoundingBoxEdge(void) const
Is this an edge bounding-box cell?
Definition cell.cpp:108
double m_dTotActualBeachErosion
Total depth of unconsolidated beach sediment actually eroded.
Definition cell.h:193
double dGetTotBeachDeposition(void) const
Get beach erosion.
Definition cell.cpp:1095
void SetSuspendedSediment(double const)
Sets this cell's suspended sediment depth equivalent, it also increments the running total of suspend...
Definition cell.cpp:444
double dGetTotWaveAngle(void) const
Returns the total wave orientation on this cell.
Definition cell.cpp:890
void IncrBeachDeposition(double const)
Increment this-timestep beach deposition, also increment total beach deposition.
Definition cell.cpp:1082
void SetActualPlatformErosion(double const)
Set this-timestep actual (constrained) shore platform erosion and increment total actual shore platfo...
Definition cell.cpp:778
double dGetSeaDepth(void) const
Returns the depth of seawater on this cell.
Definition cell.cpp:432
bool bPotentialPlatformErosion(void) const
Returns true if this cell has had potential erosion this timestep.
Definition cell.cpp:216
double dGetTotActualBeachErosion(void) const
Get total actual (supply-constrained) beach erosion.
Definition cell.cpp:1070
double m_dBasementElevation
Elevation of basement surface (m)
Definition cell.h:100
int m_nCoastlineNormal
If this cell is 'under' a coastline normal, this is the number of the normal.
Definition cell.h:88
double dGetCellDeepWaterWaveHeight(void) const
Returns the deep water wave height on this cell.
Definition cell.cpp:902
double dGetInterventionTopElev(void) const
Returns the elevation of the top of the intervention, assuming it rests on the sediment-top surface.
Definition cell.cpp:1164
double dGetOverallTopElev(void) const
Returns the highest elevation of the cell, which is either the sediment top elevation plus interventi...
Definition cell.cpp:546
double dGetTotUnconsFine(void) const
Returns the total thickness of fine unconsolidated sediment on this cell.
Definition cell.cpp:604
double m_dLocalConsSlope
Used in erosion calculations, stored here for display purposes.
Definition cell.h:97
int nGetTopNonZeroLayerAboveBasement(void) const
Returns the index of the topmost sediment layer (layer 0 being the one just above basement) with non-...
Definition cell.cpp:472
bool m_bFloodBySetupSurgeRunup
TODO 007 What is this used for?
Definition cell.h:79
double dGetTotConsSandThickConsiderNotch(void) const
Returns the total thickness of sand-sized consolidated sediment on this cell, minus the depth-equival...
Definition cell.cpp:614
double dGetTotSandTalusDeposition(void) const
Returns the total depth of sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1026
double m_dBeachDepositionThisIter
Depth of unconsolidated beach sediment deposited this timestep.
Definition cell.h:196
bool m_bPossibleFloodStartCell
TODO 007 What is this used for?
Definition cell.h:73
double dGetTotCliffCollapseSand(void) const
Returns the running total depth of sand-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:988
double dGetBeachDeposition(void) const
Get beach deposition.
Definition cell.cpp:1089
bool bIsInundated(void) const
Returns true if the elevation of the sediment top surface for this cell (plus any intervention) is le...
Definition cell.cpp:552
void AppendLayers(int const)
Appends sediment layers.
Definition cell.cpp:692
bool bIsPossibleCoastStartCell(void) const
Returns a flag which shows whether this cell has been flagged as a possible start- or end-point for a...
Definition cell.cpp:198
void SetActualBeachErosion(double const)
Set this-timestep actual (supply-constrained) beach erosion and increment total actual beach erosion.
Definition cell.cpp:1057
double dGetBeachProtectionFactor(void) const
Returns this cell's beach protection factor.
Definition cell.cpp:946
double m_dTalusSandDepositionThisIter
Depth of unconsolidated sand sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:172
double m_dTalusCoarseDepositionThisIter
Depth of unconsolidated coarse sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:178
double dGetTotAllSedThickness(void) const
Returns the total thickness of all sediment (all size classes) on this cell.
Definition cell.cpp:686
double m_dTotBeachDeposition
Total depth of unconsolidated beach sediment deposited.
Definition cell.h:199
void AddCoarseTalusDeposition(double const)
Increments the depth of this-timestep coarse-sized talus from cliff collapse on this cell,...
Definition cell.cpp:1007
void SetPotentialBeachErosion(double const)
Set potential (unconstrained) beach erosion and increment total beach potential erosion.
Definition cell.cpp:1038
double m_dTotWaveHeight
Total wave height (m) (used to calc average)
Definition cell.h:112
int nGetPolygonID(void) const
Returns the global ID number of the polygon which 'contains' this cell (returns INT_NODATA if the cel...
Definition cell.cpp:278
double dGetSedimentTopElev(void) const
Returns the true elevation of the sediment's top surface for this cell (if there is a cliff notch,...
Definition cell.cpp:534
~CGeomCell(void)
Destructor.
Definition cell.cpp:91
int nGetBoundingBoxEdge(void) const
Returns the number of the bounding-box edge, or NO_DIRECTION if it is not.
Definition cell.cpp:102
bool bIsInActiveZone(void) const
Returns a flag which shows whether this cell is in the active zone.
Definition cell.cpp:174
CRWCellLayer * pGetLayerAboveBasement(int const)
Return a reference to the Nth sediment layer (layer 0 being just above basement)
Definition cell.cpp:514
double m_dTotWaveAngle
Total wave orientation (used to calc average)
Definition cell.h:121
void SetInterventionHeight(double const)
Sets the intervention height.
Definition cell.cpp:1152
bool bIsFloodLine(void) const
Returns true if the cell is flood line.
Definition cell.cpp:245
int nGetProfileID(void) const
If this cell is 'under' a coastline-normal profile, returns the number of the profile....
Definition cell.cpp:257
double m_dCliffCollapseSandThisIter
Depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:157
double dGetThisIterCliffCollapseCoarseTalusDeposition(void) const
Retuns the depth of this-timestep coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1020
double dGetSedimentPlusInterventionTopElev(void) const
Returns the true elevation of the sediment's top surface for this cell (if there is a cliff notch,...
Definition cell.cpp:540
double dGetInterventionHeight(void) const
Returns the intervention height.
Definition cell.cpp:1158
bool bIsCellCheck(void) const
void SetPolygonID(int const)
Sets the global ID number of the polygon which 'contains' this cell.
Definition cell.cpp:272
void SetAsCoastline(bool const)
Marks this cell as 'under' a coastline.
Definition cell.cpp:227
double m_dPotentialPlatformErosionThisIter
Depth of sediment on the shore platform that could be eroded this timestep, if no supply-limitation.
Definition cell.h:142
double m_dTotSandCliffCollapse
Total depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:166
double dGetThisIterSWL(void) const
Returns the sea surface elevation at current iteration.
Definition cell.cpp:558
int nGetInterventionClass(void) const
Gets the intervention class.
Definition cell.cpp:1136
void SetLocalConsSlope(double const)
Sets the local slope of the consolidated sediment only.
Definition cell.cpp:399
double dGetThisIterCliffCollapseSandTalusDeposition(void) const
Returns the depth of this-timestep sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1014
void SetDownDriftZoneNumber(int const)
Sets the down drift zone number.
Definition cell.cpp:381
static CGeomRasterGrid * m_pGrid
Definition cell.h:220
double dGetWaveHeight(void) const
Returns the wave height on this cell.
Definition cell.cpp:865
double dGetWaveAngle(void) const
Returns the wave orientation on this cell.
Definition cell.cpp:884
double dGetTotSeaDepth(void) const
Returns the total depth of seawater on this cell.
Definition cell.cpp:438
double m_dTotFineCliffCollapse
Total depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:163
int nGetLayerAtElev(double const) const
Given an elevation, this finds the index of the layer that contains that elevation (layer 0 being the...
Definition cell.cpp:731
double m_dTotCoarseCliffCollapse
Total depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:169
CRWCellLandform m_Landform
This cell's landform data.
Definition cell.h:208
double m_dCliffCollapseFineThisIter
Depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:154
double m_dDeepWaterWaveHeight
Wave height if this is a deep water cell.
Definition cell.h:124
double dGetLocalConsSlope(void) const
Returns the local slope of the consolidated sediment only.
Definition cell.cpp:405
double m_dActualBeachErosionThisIter
Depth of unconsolidated beach sediment actually eroded this timestep.
Definition cell.h:190
double m_dTotSuspendedSediment
Total depth of suspended sediment (m) since simulation start (used to calc average)
Definition cell.h:139
void SetInterventionClass(int const)
Sets the landform category and subcategory for an intervention.
Definition cell.cpp:1122
bool m_bInContiguousFlood
Switch to indicate that this cell is in the contiguous runup flood area.
Definition cell.h:46
void SetWaveValuesToDeepWaterWaveValues(void)
Sets wave height to the deep water wave height value, and sets wave orientation to the deep water wav...
Definition cell.cpp:932
void SetBoundingBoxEdge(int const)
Set the edge number if this cell is an edge bounding-box cell.
Definition cell.cpp:96
double dGetTotUnconsCoarse(void) const
Returns the total thickness of coarse unconsolidated sediment on this cell.
Definition cell.cpp:656
void SetFloodBySetupSurgeRunup(void)
Set this cell as flooded by setup surge runup.
Definition cell.cpp:150
void SetPotentialPlatformErosion(double const)
Set potential (unconstrained) shore platform erosion and increment total shore platform potential ero...
Definition cell.cpp:759
bool m_bIsInActiveZone
Switch to indicate that this cell is in the active zone.
Definition cell.h:49
void SetPossibleFloodStartCell(void)
Sets a flag to show that this cell has been flagged as a possible start-point for runup flooding.
Definition cell.cpp:204
void AddSuspendedSediment(double const)
Adds to this cell's suspended sediment depth equivalent, it also increments the running total of susp...
Definition cell.cpp:452
bool m_bShadowBoundary
Switch to show this cell is 'under' a shadow boundaryu.
Definition cell.h:67
int nGetDownDriftZoneNumber(void) const
Gets the down drift zone number.
Definition cell.cpp:387
double dGetTotUnconsSand(void) const
Returns the total thickness of sand-sized unconsolidated sediment on this cell.
Definition cell.cpp:630
void UnSetInContiguousFlood(void)
Set this cell as not in the contiguous runup flood area.
Definition cell.cpp:132
friend class CSimulation
Definition cell.h:39
bool bIsInContiguousSeaArea(void) const
Is this cell in the contiguous sea area?
Definition cell.cpp:162
double dGetUnconsD50(void) const
Returns the D50 of unconsolidated sediment on this cell.
Definition cell.cpp:1116
double m_dPotentialBeachErosionThisIter
Depth of unconsolidated beach sediment that could be eroded this timestep, if no supply-limitation.
Definition cell.h:184
bool bIsCellFloodCheck(void) const
Returns true if this cell is checked, false otherwise (flood switch)
Definition cell.cpp:375
double dGetTotActualPlatformErosion(void) const
Get total actual (constrained) shore platform erosion.
Definition cell.cpp:791
bool bIsElevLessThanWaterLevel(void) const
Returns true if the top elevation of this cell (sediment plus any intervention) is less than this ite...
Definition cell.cpp:345
vector< double > m_VdAllHorizonTopElev
Number of layer-top elevations (inc. that of the basement, which is m_VdAllHorizonTopElev[0]); size 1...
Definition cell.h:215
double m_dWavePeriod
Wave period (s)
Definition cell.h:118
double m_dSeaDepth
Depth of still water (m), is zero if not inundated.
Definition cell.h:103
double dGetTotUnconsThickness(void) const
Returns the total thickness of unconsolidated sediment (all size classes) on this cell.
Definition cell.cpp:676
double dGetBasementElev(void) const
Returns this cell's basement elevation.
Definition cell.cpp:417
int m_nPolygonID
If this cell is within a polygon, this is the ID of the polygon.
Definition cell.h:85
bool bIsPossibleFloodStartCell(void) const
Returns a flag which shows whether this cell has been flagged as a possible start point for runup flo...
Definition cell.cpp:210
double m_dActualPlatformErosionThisIter
Depth of sediment actually eroded from the shore platform this timestep.
Definition cell.h:148
double dGetPotentialPlatformErosion(void) const
Get potential (unconstrained) shore platform erosion.
Definition cell.cpp:766
double dGetTotSuspendedSediment(void) const
Returns the total suspended sediment depth equivalent on this cell.
Definition cell.cpp:466
double m_dDeepWaterWaveAngle
Wave orientation if this is a deep water cell.
Definition cell.h:127
double dGetActualBeachErosion(void) const
Get actual (supply-constrained) beach erosion.
Definition cell.cpp:1064
void SetSeaDepth(void)
Returns the depth of seawater on this cell if the sediment top is < SWL, or zero.
Definition cell.cpp:797
void SetShadowZoneNumber(int const)
Set the number of the shadow zone that this cell is in.
Definition cell.cpp:284
double dGetTotConsCoarseThickConsiderNotch(void) const
Returns the total thickness of coarse consolidated sediment on this cell, minus the depth-equivalent ...
Definition cell.cpp:640
void SetCellDeepWaterWaveAngle(double const)
Sets the deep water wave orientation on this cell.
Definition cell.cpp:908
bool m_bPossibleCoastStartCell
Switch to show that this cell could be the start of a coastline.
Definition cell.h:70
CGeomCell()
Constructor with initialization list.
Definition cell.cpp:34
double dGetActualPlatformErosion(void) const
Get actual (constrained) shore platform erosion.
Definition cell.cpp:785
void SetFloodBySetupSurge(void)
Set this cell as flooded by setup surge.
Definition cell.cpp:138
int m_nShadowZoneNumber
If this cell is within a shadow zone, this is the number of the shadow zone.
Definition cell.h:91
bool bIsinThisShadowZone(int const) const
Returns true if this cell is in the shadow zone with number given by the parameter,...
Definition cell.cpp:296
double m_dDeepWaterWavePeriod
Wave period if this is a deep water cell.
Definition cell.h:130
double m_dTotPotentialBeachErosion
Total depth of unconsolidated beach sediment eroded; if no supply-limitation.
Definition cell.h:187
double m_dSuspendedSediment
Suspended sediment as depth equivalent (m)
Definition cell.h:136
double m_dTotTalusSandDeposition
Total depth of unconsolidated sand sediment deposited as a result of cliff collapse.
Definition cell.h:175
double dGetTotConsThickness(void) const
Returns the total thickness of consolidated sediment (all size classes) on this cell.
Definition cell.cpp:666
void SetCheckFloodCell(void)
Set this cell as checked (flood switch)
Definition cell.cpp:363
void SetInContiguousSea(void)
Set this cell as a sea cell.
Definition cell.cpp:114
int m_nDownDriftZoneNumber
If this cell is within a downdrift zone, this is the number of the downdrift zone.
Definition cell.h:94
double m_dWaveHeight
Wave height (m)
Definition cell.h:109
void SetWaveAngle(double const)
Sets the wave orientation on this cell, also increments the total wave orientation.
Definition cell.cpp:877
void SetProfileID(int const)
Marks this cell as 'under' a coastline-normal profile.
Definition cell.cpp:251
void SetPossibleCoastStartCell(void)
Sets a flag to show that this cell has been flagged as a possible start- or end-point for a coastline...
Definition cell.cpp:192
void SetShadowZoneBoundary(void)
Sets a flag to show that this cell is a shadow zone boundary.
Definition cell.cpp:180
double dGetThisIterCliffCollapseErosionCoarse(void) const
Returns the depth of this-timestep coarse-sized sediment cliff collapse on this cell.
Definition cell.cpp:976
void SetBasementElev(double const)
Sets this cell's basement elevation.
Definition cell.cpp:411
void IncrCliffCollapseErosion(double const, double const, double const)
Increments the fine, sand, and coarse depths of this-timestep cliff collapse on this cell,...
Definition cell.cpp:952
void AddSandTalusDeposition(double const)
Increments the depth of this-timestep sand-sized talus from cliff collapse on this cell,...
Definition cell.cpp:1000
double dGetSuspendedSediment(void) const
Returns the suspended sediment depth equivalent on this cell.
Definition cell.cpp:460
bool bIsProfile(void) const
Returns true if this cell is 'under' a coastline normal.
Definition cell.cpp:263
double m_dUnconsD50
d50 of unconsolidated sediment on top layer with unconsolidated sediment depth > 0
Definition cell.h:202
double m_dInterventionHeight
Height of intervention structure.
Definition cell.h:205
vector< CRWCellLayer > m_VLayerAboveBasement
Number of layers NOT including the basement. Layer 0 is the lowest.
Definition cell.h:212
bool m_bFloodLine
Switch to indicate that this cell is 'under' a runup flood line.
Definition cell.h:55
bool bIsCoastline(void) const
Returns true if the cell is 'under' a coastline.
Definition cell.cpp:233
void UnSetCheckFloodCell(void)
Set the cell as not checked (flood switch)
Definition cell.cpp:369
void SetCellDeepWaterWaveHeight(double const)
Sets the deep water wave height on this cell.
Definition cell.cpp:896
void SetCheckCell(void)
double dGetThisIterCliffCollapseErosionSand(void) const
Returns the depth of this-timestep sand-sized sediment cliff collapse on this cell.
Definition cell.cpp:970
bool bBasementElevIsMissingValue(void) const
Returns true if this cells's basement data is NODATA, is needed for irregularly-shaped DEMs.
Definition cell.cpp:423
double dGetTotCliffCollapseCoarse(void) const
Returns the running total depth of coarse-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:994
bool m_bWaveFlood
Switch to indicate that this cell is 'under' a runup wave flood line.
Definition cell.h:58
double m_dCliffCollapseCoarseThisIter
Depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:160
CRWCellLandform * pGetLandform(void)
Returns a pointer to this cell's CRWCellLandform object.
Definition cell.cpp:393
void SetBeachProtectionFactor(double const)
Definition cell.cpp:940
void SetWaveFlood(void)
Set this cell as flooded by swl + surge + setup + runup.
Definition cell.cpp:314
void SetAsFloodLine(bool const)
Marks this cell is flood line.
Definition cell.cpp:239
double m_dTotSeaDepth
Total depth of still water (m) since beginning of simulation (used to calc average)
Definition cell.h:106
double dGetConsSedTopForLayerAboveBasement(int const) const
Returns the elevation of the top of the consolidated sediment only, for a given layer (layer 0 being ...
Definition cell.cpp:497
bool m_bFloodBySetupSurge
TODO 007 What is this used for?
Definition cell.h:76
double dGetThisIterTotWaterLevel(void) const
Returns the total water level at current iteration.
Definition cell.cpp:564
bool m_bCoastline
Switch to indicate that this cell is 'under' a coastline.
Definition cell.h:52
Geometry cass used to represent the raster grid of cell objects.
Definition raster_grid.h:35
Real-world class used to represent the landform of a cell.
Real-world class used to represent the sediment layers associated with a cell object.
Definition cell_layer.h:32
This file contains global definitions for CoastalME.
Contains CGeomRasterGrid definitions.