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
18 This file is part of CoastalME, the Coastal Modelling Environment.
19
20 CoastalME is free software; you can redistribute it and/or modify it under
21the terms of the GNU General Public License as published by the Free Software
22Foundation; either version 3 of the License, or (at your option) any later
23version.
24
25 This program is distributed in the hope that it will be useful, but WITHOUT
26ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
27FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
28
29 You should have received a copy of the GNU General Public License along with
30this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave,
31Cambridge, MA 02139, USA.
32
33===============================================================================================================================*/
34#include <vector>
35using std::vector;
36
37#include "cell_landform.h"
38#include "cell_layer.h"
39#include "cme.h"
40#include "raster_grid.h"
41
42class CGeomRasterGrid; // Forward declaration
43
45{
46 friend class CSimulation;
47
48 private:
51
54
57
60
63
66
67 // //! TODO 007 What is this used for?
68 // bool m_bCheckCell;
69
72
75
78
81
84
87
90
93
96
99
102
105
108
111
114
117
120
122 double m_dSlope;
123
126
130
133
136
139
142
145
148
151
154
157
160
163
166
169
172
175
178
181
184
187
190
193
196
199
202
205
208
211
214
217
220
223
226
229
232
233 // Initialize these as empty vectors
234
236 vector<CRWCellLayer> m_VLayerAboveBasement;
237
239 vector<double> m_VdAllHorizonTopElev;
240
241 protected:
242 public:
244
245 CGeomCell();
246 ~CGeomCell(void);
247
248 void SetInContiguousSea(void);
249 bool bIsInContiguousSea(void) const;
250
251 void SetInContiguousFlood(void);
252 void UnSetInContiguousFlood(void);
253 void SetFloodBySetupSurge(void);
254 bool bIsFloodBySetupSurge(void) const;
255 void SetFloodBySetupSurgeRunup(void);
256 bool bIsFloodBySetupSurgeRunup(void) const;
257 bool bIsInContiguousSeaArea(void) const;
258
259 void SetInActiveZone(bool const);
260 bool bIsInActiveZone(void) const;
261 bool bPotentialPlatformErosion(void) const;
262 // bool bActualPlatformErosion(void) const;
263 void SetAsCoastline(int const);
264 bool bIsCoastline(void) const;
265 int nGetCoastline(void) const;
266 void SetAsFloodline(bool const);
267 bool bIsFloodline(void) const;
268
269 void SetAsCliff(bool const);
270 bool bIsCliff(void) const;
271
272 void SetProfileID(int const);
273 int nGetProfileID(void) const;
274 bool bIsProfile(void) const;
275 void SetProfileCoastID(int const);
276 int nGetProfileCoastID(void) const;
277 void SetCoastAndProfileID(int const, int const);
278
279 void SetShadowZoneBoundary(void);
280 bool bIsShadowZoneBoundary(void) const;
281
282 void SetBoundingBoxEdge(int const);
283 int nGetBoundingBoxEdge(void) const;
284 bool bIsBoundingBoxEdge(void) const;
285
286 void SetPossibleCoastStartCell(void);
287 bool bIsPossibleCoastStartCell(void) const;
288
289 void SetPossibleFloodStartCell(void);
290 bool bIsPossibleFloodStartCell(void) const;
291
292 void SetPolygonID(int const);
293 int nGetPolygonID(void) const;
294 void SetPolygonCoastID(int const);
295 int nGetPolygonCoastID(void) const;
296 void SetCoastAndPolygonID(int const, int const);
297
299
300 void SetWaveFlood(void);
301 bool bIsElevLessThanWaterLevel(void) const;
302
303 void SetCheckCell(void);
304 bool bIsCellCheck(void) const;
305
306 void SetCheckFloodCell(void);
307 void UnSetCheckFloodCell(void);
308 bool bIsCellFloodCheck(void) const;
309
310 void SetLocalConsSlope(double const);
311 double dGetLocalConsSlope(void) const;
312
313 void SetBasementElev(double const);
314 double dGetBasementElev(void) const;
315 bool bBasementElevIsMissingValue(void) const;
316
317 void SetSlope(double const);
318 double dGetSlope(void) const;
319
320 // double dGetVolEquivSedTopElev(void) const;
321 double dGetSedimentTopElev(void) const;
322 double dGetSedimentPlusInterventionTopElev(void) const;
323 double dGetOverallTopElev(void) const;
324
325 bool bIsInundated(void) const;
326 double dGetThisIterSWL(void) const;
327 double dGetThisIterTotWaterLevel(void) const;
328 // bool bIsSeaIncBeach(void) const;
329 void SetSeaDepth(void);
330 double dGetSeaDepth(void) const;
331 void InitCell(void);
332 double dGetTotSeaDepth(void) const;
333
334 void SetWaveHeight(double const);
335 double dGetWaveHeight(void) const;
336 double dGetTotWaveHeight(void) const;
337 void SetWaveAngle(double const);
338 double dGetWaveAngle(void) const;
339 double dGetTotWaveAngle(void) const;
340
341 void SetCellDeepWaterWaveHeight(double const);
342 double dGetCellDeepWaterWaveHeight(void) const;
343 void SetCellDeepWaterWaveAngle(double const);
344 double dGetCellDeepWaterWaveAngle(void) const;
345 void SetCellDeepWaterWavePeriod(double const);
346 double dGetCellDeepWaterWavePeriod(void) const;
347
349
350 void SetBeachProtectionFactor(double const);
351 double dGetBeachProtectionFactor(void) const;
352
353 void SetSuspendedSediment(double const);
354 void AddSuspendedSediment(double const);
355 double dGetSuspendedSediment(void) const;
356 double dGetTotSuspendedSediment(void) const;
357
358 int nGetTopNonZeroLayerAboveBasement(void) const;
359 int nGetTopLayerAboveBasement(void) const;
360
361 double dGetConsSedTopForLayerAboveBasement(int const) const;
363 void AppendLayers(int const);
364 void CalcAllLayerElevsAndD50(void);
365 int nGetLayerAtElev(double const) const;
366 double dCalcLayerElev(const int);
367
368 double dGetTotConsFineThickConsiderNotch(void) const;
369 double dGetTotUnconsFine(void) const;
370 double dGetTotConsSandThickConsiderNotch(void) const;
371 double dGetTotUnconsSand(void) const;
372 double dGetTotConsCoarseThickConsiderNotch(void) const;
373 double dGetTotUnconsCoarse(void) const;
374
375 double dGetTotConsThickness(void) const;
376 double dGetTotUnconsThickness(void) const;
377 double dGetTotAllSedThickness(void) const;
378
379 void SetPotentialPlatformErosion(double const);
380 double dGetPotentialPlatformErosion(void) const;
381 double dGetTotPotentialPlatformErosion(void) const;
382
383 void SetActualPlatformErosion(double const);
384 double dGetActualPlatformErosion(void) const;
385 double dGetTotActualPlatformErosion(void) const;
386
387 void IncrCliffCollapseErosion(double const, double const, double const);
388 double dGetThisIterCliffCollapseErosionFine(void) const;
389 double dGetThisIterCliffCollapseErosionSand(void) const;
391 double dGetTotCliffCollapseFine(void) const;
392 double dGetTotCliffCollapseSand(void) const;
393 double dGetTotCliffCollapseCoarse(void) const;
394
395 void AddSandTalusDeposition(double const);
397 double dGetTotSandTalusDeposition(void) const;
398 void AddCoarseTalusDeposition(double const);
400 double dGetTotCoarseTalusDeposition(void) const;
401
402 void SetPotentialBeachErosion(double const);
403 double dGetPotentialBeachErosion(void) const;
404 double dGetTotPotentialBeachErosion(void) const;
405 void SetActualBeachErosion(double const);
406 double dGetActualBeachErosion(void) const;
407 double dGetTotActualBeachErosion(void) const;
408 // bool bActualBeachErosionThisIter(void) const;
409
410 void IncrBeachDeposition(double const);
411 double dGetBeachDeposition(void) const;
412 double dGetTotBeachDeposition(void) const;
413 // bool bBeachDepositionThisIter(void) const;
414
415 bool bBeachErosionOrDepositionThisIter(void) const;
416
417 double dGetUnconsD50(void) const;
418
419 void SetInterventionClass(int const);
420 int nGetInterventionClass(void) const;
421 void SetInterventionHeight(double const);
422 double dGetInterventionHeight(void) const;
423 double dGetInterventionTopElev(void) const;
424
425 void SetShadowZoneNumber(int const);
426 int nGetShadowZoneNumber(void) const;
427 bool bIsinThisShadowZone(int const) const;
428 bool bIsinAnyShadowZone(void) const;
429 void SetDownDriftZoneNumber(int const);
430 int nGetDownDriftZoneNumber(void) const;
431};
432#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:174
double dGetTotCliffCollapseFine(void) const
Returns the running total depth of fine-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1079
void SetCellDeepWaterWavePeriod(double const)
Sets the deep water wave Period on this cell.
Definition cell.cpp:1017
double dGetTotWaveHeight(void) const
Returns the total wave height on this cell.
Definition cell.cpp:968
void SetInContiguousFlood(void)
Set this cell as in the contiguous runup flood area.
Definition cell.cpp:137
double dGetThisIterCliffCollapseErosionFine(void) const
Returns the depth of this-timestep fine-sized sediment cliff collapse on this cell.
Definition cell.cpp:1061
double m_dTotTalusCoarseDeposition
Total depth of unconsolidated coarse sediment deposited as a result of cliff collapse.
Definition cell.h:204
double dGetTotCoarseTalusDeposition(void) const
Returns the total depth of coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1129
double m_dTotPotentialPlatformErosion
Total depth of sediment eroded from the shore platform, if no supply-limitation.
Definition cell.h:168
int m_nBoundingBoxEdge
If this cell is an edge (or bounding box) cell, this specifies the edge.
Definition cell.h:89
double m_dWaveAngle
Wave orientation.
Definition cell.h:138
double dGetTotPotentialPlatformErosion(void) const
Get total potential (unconstrained) shore platform erosion.
Definition cell.cpp:867
void SetAsFloodline(bool const)
Marks this cell is flood line.
Definition cell.cpp:271
bool bIsinAnyShadowZone(void) const
Returns true if this cell is in any shadow zone, false otherwise.
Definition cell.cpp:366
double dGetTotConsFineThickConsiderNotch(void) const
Returns the total thickness of fine consolidated sediment on this cell, minus the depth-equivalent of...
Definition cell.cpp:667
bool bIsFloodBySetupSurge(void) const
Is this cell flooded by setup surge?
Definition cell.cpp:155
bool m_bCheckFloodCell
TODO 007 What is this used for?
Definition cell.h:71
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:786
bool m_bCliff
Is this cell a cliff?
Definition cell.h:59
void SetProfileCoastID(int const)
Sets the coast ID number of the coast-normal profile which this cell is 'under'.
Definition cell.cpp:304
int nGetTopLayerAboveBasement(void) const
Returns the index of the topmost sediment layer (layer 0 being the one just above basement),...
Definition cell.cpp:560
double dCalcLayerElev(const int)
For this cell, calculates the elevation of the top of a given layer.
Definition cell.cpp:842
int nGetShadowZoneNumber(void) const
Gets the number of the shadow zone that this cell is in.
Definition cell.cpp:354
void SetWaveHeight(double const)
Sets the wave height on this cell, also increments the total wave height.
Definition cell.cpp:952
bool bIsShadowZoneBoundary(void) const
Returns a flag which shows whether this cell is a shadow zone boundary.
Definition cell.cpp:197
double dGetCellDeepWaterWavePeriod(void) const
Returns the deep water wave period on this cell.
Definition cell.cpp:1023
void InitCell(void)
Initialise values for this cell.
Definition cell.cpp:898
double dGetCellDeepWaterWaveAngle(void) const
Returns the deep water wave orientation on this cell.
Definition cell.cpp:1011
int nGetProfileCoastID(void) const
Gets the coast ID number of the coast-normal profile which this cell is 'under', or returns INT_NODAT...
Definition cell.cpp:310
bool bBeachErosionOrDepositionThisIter(void) const
Returns true only if this cell has had no deposition or erosion this timestep.
Definition cell.cpp:1204
double dGetTotPotentialBeachErosion(void) const
Get total potential (supply-unconstrained) beach erosion.
Definition cell.cpp:1148
bool bIsFloodBySetupSurgeRunup(void) const
Is this cell flooded by setup surge runup?
Definition cell.cpp:167
void SetInActiveZone(bool const)
Sets a flag to show whether this cell is in the active zone.
Definition cell.cpp:179
double dGetPotentialBeachErosion(void) const
Get potential (unconstrained) beach erosion.
Definition cell.cpp:1142
bool bIsInContiguousSea(void) const
Is this a sea cell?
Definition cell.cpp:131
double m_dBeachProtectionFactor
Only meaningful if in zone of platform erosion. 0 = fully protected; 1 = ! no protection.
Definition cell.h:156
bool m_bInContiguousSea
Switch to indicate if this is a sea cell, contiguous with other sea cells.
Definition cell.h:50
int nGetPolygonCoastID(void) const
Returns the coast number of the polygon which 'contains' this cell (returns INT_NODATA if the cell is...
Definition cell.cpp:335
int nGetCoastline(void) const
Returns the ID of the coastline, or INT_NODATA if not a coastline.
Definition cell.cpp:253
bool bIsBoundingBoxEdge(void) const
Is this an edge bounding-box cell?
Definition cell.cpp:119
double m_dTotActualBeachErosion
Total depth of unconsolidated beach sediment actually eroded.
Definition cell.h:216
double dGetTotBeachDeposition(void) const
Get beach erosion.
Definition cell.cpp:1192
void SetSuspendedSediment(double const)
Sets this cell's suspended sediment depth equivalent, it also increments the running total of suspend...
Definition cell.cpp:515
double dGetTotWaveAngle(void) const
Returns the total wave orientation on this cell.
Definition cell.cpp:987
void IncrBeachDeposition(double const)
Increment this-timestep beach deposition, also increment total beach deposition.
Definition cell.cpp:1179
void SetActualPlatformErosion(double const)
Set this-timestep actual (constrained) shore platform erosion and increment total actual shore platfo...
Definition cell.cpp:873
double dGetSeaDepth(void) const
Returns the depth of seawater on this cell.
Definition cell.cpp:503
bool bPotentialPlatformErosion(void) const
Returns true if this cell has had potential erosion this timestep.
Definition cell.cpp:227
double dGetTotActualBeachErosion(void) const
Get total actual (supply-constrained) beach erosion.
Definition cell.cpp:1167
double m_dBasementElevation
Elevation of basement surface (m)
Definition cell.h:119
int m_nCoastlineNormal
If this cell is 'under' a coastline normal, this is the number of the normal.
Definition cell.h:107
double dGetCellDeepWaterWaveHeight(void) const
Returns the deep water wave height on this cell.
Definition cell.cpp:999
double dGetInterventionTopElev(void) const
Returns the elevation of the top of the intervention, assuming it rests on the sediment-top surface.
Definition cell.cpp:1264
double dGetOverallTopElev(void) const
Returns the highest elevation of the cell, which is either the sediment top elevation plus interventi...
Definition cell.cpp:620
double dGetTotUnconsFine(void) const
Returns the total thickness of fine unconsolidated sediment on this cell.
Definition cell.cpp:684
double m_dLocalConsSlope
Used in erosion calculations, stored here for display purposes.
Definition cell.h:116
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:543
bool m_bFloodBySetupSurgeRunup
TODO 007 What is this used for?
Definition cell.h:86
double dGetTotConsSandThickConsiderNotch(void) const
Returns the total thickness of sand-sized consolidated sediment on this cell, minus the depth-equival...
Definition cell.cpp:695
double dGetTotSandTalusDeposition(void) const
Returns the total depth of sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1123
double m_dBeachDepositionThisIter
Depth of unconsolidated beach sediment deposited this timestep.
Definition cell.h:219
bool m_bPossibleFloodStartCell
TODO 007 What is this used for?
Definition cell.h:80
double dGetTotCliffCollapseSand(void) const
Returns the running total depth of sand-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1085
double dGetBeachDeposition(void) const
Get beach deposition.
Definition cell.cpp:1186
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:626
void AppendLayers(int const)
Appends sediment layers.
Definition cell.cpp:779
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:209
int m_nPolygonCoastID
If this cell is within a polygon, this is the ID number of the polygon's coast.
Definition cell.h:104
void SetActualBeachErosion(double const)
Set this-timestep actual (supply-constrained) beach erosion and increment total actual beach erosion.
Definition cell.cpp:1154
double dGetBeachProtectionFactor(void) const
Returns this cell's beach protection factor.
Definition cell.cpp:1043
double m_dTalusSandDepositionThisIter
Depth of unconsolidated sand sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:195
double m_dTalusCoarseDepositionThisIter
Depth of unconsolidated coarse sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:201
double dGetTotAllSedThickness(void) const
Returns the total thickness of all sediment (all size classes) on this cell.
Definition cell.cpp:773
double m_dTotBeachDeposition
Total depth of unconsolidated beach sediment deposited.
Definition cell.h:222
void AddCoarseTalusDeposition(double const)
Increments the depth of this-timestep coarse-sized talus from cliff collapse on this cell,...
Definition cell.cpp:1104
void SetPotentialBeachErosion(double const)
Set potential (unconstrained) beach erosion and increment total beach potential erosion.
Definition cell.cpp:1135
double m_dTotWaveHeight
Total wave height (m) (used to calc average)
Definition cell.h:135
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:326
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:608
~CGeomCell(void)
Destructor.
Definition cell.cpp:104
int nGetBoundingBoxEdge(void) const
Returns the number of the bounding-box edge, or NO_DIRECTION if it is not.
Definition cell.cpp:113
bool bIsInActiveZone(void) const
Returns a flag which shows whether this cell is in the active zone.
Definition cell.cpp:185
CRWCellLayer * pGetLayerAboveBasement(int const)
Return a reference to the Nth sediment layer (layer 0 being just above basement)
Definition cell.cpp:586
double m_dTotWaveAngle
Total wave orientation (used to calc average)
Definition cell.h:144
void SetInterventionHeight(double const)
Sets the intervention height.
Definition cell.cpp:1252
int nGetProfileID(void) const
Gets the ID number of the coast-normal profile which this cell is 'under', or returns INT_NODATA.
Definition cell.cpp:289
double m_dCliffCollapseSandThisIter
Depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:180
double dGetThisIterCliffCollapseCoarseTalusDeposition(void) const
Retuns the depth of this-timestep coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1117
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:614
double dGetSlope(void) const
Returns this cell's slope.
Definition cell.cpp:488
double dGetInterventionHeight(void) const
Returns the intervention height.
Definition cell.cpp:1258
bool bIsCellCheck(void) const
void SetPolygonID(int const)
Sets the global ID number of the polygon which 'contains' this cell.
Definition cell.cpp:323
double m_dPotentialPlatformErosionThisIter
Depth of sediment on the shore platform that could be eroded this timestep, if no supply-limitation.
Definition cell.h:165
double m_dTotSandCliffCollapse
Total depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:189
void SetCoastAndProfileID(int const, int const)
Sets the coast ID number, and the profile ID number, of the coast-normal profile which this cell is '...
Definition cell.cpp:316
double dGetThisIterSWL(void) const
Returns the sea surface elevation at current iteration.
Definition cell.cpp:632
int nGetInterventionClass(void) const
Gets the intervention class.
Definition cell.cpp:1234
void SetLocalConsSlope(double const)
Sets the local slope of the consolidated sediment only.
Definition cell.cpp:458
double dGetThisIterCliffCollapseSandTalusDeposition(void) const
Returns the depth of this-timestep sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1111
void SetDownDriftZoneNumber(int const)
Sets the down drift zone number.
Definition cell.cpp:440
static CGeomRasterGrid * m_pGrid
Definition cell.h:243
double dGetWaveHeight(void) const
Returns the wave height on this cell.
Definition cell.cpp:962
double dGetWaveAngle(void) const
Returns the wave orientation on this cell.
Definition cell.cpp:981
double dGetTotSeaDepth(void) const
Returns the total depth of seawater on this cell.
Definition cell.cpp:509
void SetSlope(double const)
Sets this cell's slope.
Definition cell.cpp:482
bool bIsCliff(void) const
Returns true if this cell is marked as a cliff.
Definition cell.cpp:265
double m_dTotFineCliffCollapse
Total depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:186
bool bIsFloodline(void) const
Returns true if the cell is flood line.
Definition cell.cpp:277
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:823
double m_dTotCoarseCliffCollapse
Total depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:192
CRWCellLandform m_Landform
This cell's landform data.
Definition cell.h:231
void SetCoastAndPolygonID(int const, int const)
Sets the coast number, and the polygon ID, of the polygon which 'contains' this cell.
Definition cell.cpp:341
double m_dCliffCollapseFineThisIter
Depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:177
double m_dDeepWaterWaveHeight
Wave height if this is a deep water cell.
Definition cell.h:147
double dGetLocalConsSlope(void) const
Returns the local slope of the consolidated sediment only.
Definition cell.cpp:464
double m_dActualBeachErosionThisIter
Depth of unconsolidated beach sediment actually eroded this timestep.
Definition cell.h:213
double m_dTotSuspendedSediment
Total depth of suspended sediment (m) since simulation start (used to calc average)
Definition cell.h:162
void SetInterventionClass(int const)
Sets the landform category and subcategory for an intervention.
Definition cell.cpp:1219
bool m_bInContiguousFlood
Switch to indicate that this cell is in the contiguous runup flood area.
Definition cell.h:53
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:1029
void SetBoundingBoxEdge(int const)
Set the edge number if this cell is an edge bounding-box cell.
Definition cell.cpp:107
double dGetTotUnconsCoarse(void) const
Returns the total thickness of coarse unconsolidated sediment on this cell.
Definition cell.cpp:740
void SetFloodBySetupSurgeRunup(void)
Set this cell as flooded by setup surge runup.
Definition cell.cpp:161
void SetPotentialPlatformErosion(double const)
Set potential (unconstrained) shore platform erosion and increment total shore platform potential ero...
Definition cell.cpp:854
bool m_bIsInActiveZone
Switch to indicate that this cell is in the active zone.
Definition cell.h:56
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:215
void AddSuspendedSediment(double const)
Adds to this cell's suspended sediment depth equivalent, it also increments the running total of susp...
Definition cell.cpp:523
bool m_bShadowBoundary
Switch to show this cell is 'under' a shadow boundary.
Definition cell.h:74
int nGetDownDriftZoneNumber(void) const
Gets the down drift zone number.
Definition cell.cpp:446
double dGetTotUnconsSand(void) const
Returns the total thickness of sand-sized unconsolidated sediment on this cell.
Definition cell.cpp:712
void UnSetInContiguousFlood(void)
Set this cell as not in the contiguous runup flood area.
Definition cell.cpp:143
friend class CSimulation
Definition cell.h:46
bool bIsInContiguousSeaArea(void) const
Is this cell in the contiguous sea area?
Definition cell.cpp:173
double dGetUnconsD50(void) const
Returns the D50 of unconsolidated sediment on this cell.
Definition cell.cpp:1213
double m_dPotentialBeachErosionThisIter
Depth of unconsolidated beach sediment that could be eroded this timestep, if no supply-limitation.
Definition cell.h:207
bool bIsCellFloodCheck(void) const
Returns true if this cell is checked, false otherwise (flood switch)
Definition cell.cpp:434
double dGetTotActualPlatformErosion(void) const
Get total actual (constrained) shore platform erosion.
Definition cell.cpp:886
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:404
vector< double > m_VdAllHorizonTopElev
Number of layer-top elevations (inc. that of the basement, which is m_VdAllHorizonTopElev[0]) size 1 ...
Definition cell.h:239
double m_dWavePeriod
Wave period (s)
Definition cell.h:141
double m_dSeaDepth
Depth of still water (m), is zero if not inundated.
Definition cell.h:125
double dGetTotUnconsThickness(void) const
Returns the total thickness of unconsolidated sediment (all size classes) on this cell.
Definition cell.cpp:762
double dGetBasementElev(void) const
Returns this cell's basement elevation.
Definition cell.cpp:476
int m_nPolygonID
If this cell is within a polygon, this is the ID of the polygon.
Definition cell.h:101
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:221
double m_dActualPlatformErosionThisIter
Depth of sediment actually eroded from the shore platform this timestep.
Definition cell.h:171
double dGetPotentialPlatformErosion(void) const
Get potential (unconstrained) shore platform erosion.
Definition cell.cpp:861
double dGetTotSuspendedSediment(void) const
Returns the total suspended sediment depth equivalent on this cell.
Definition cell.cpp:537
double m_dDeepWaterWaveAngle
Wave orientation if this is a deep water cell.
Definition cell.h:150
double dGetActualBeachErosion(void) const
Get actual (supply-constrained) beach erosion.
Definition cell.cpp:1161
void SetSeaDepth(void)
Returns the depth of seawater on this cell if the sediment top is < SWL, or zero.
Definition cell.cpp:892
void SetShadowZoneNumber(int const)
Set the number of the shadow zone that this cell is in.
Definition cell.cpp:348
double dGetTotConsCoarseThickConsiderNotch(void) const
Returns the total thickness of coarse consolidated sediment on this cell, minus the depth-equivalent ...
Definition cell.cpp:723
void SetCellDeepWaterWaveAngle(double const)
Sets the deep water wave orientation on this cell.
Definition cell.cpp:1005
bool m_bPossibleCoastStartCell
Switch to show that this cell could be the start of a coastline.
Definition cell.h:77
CGeomCell()
Constructor with initialization list.
Definition cell.cpp:44
double dGetActualPlatformErosion(void) const
Get actual (constrained) shore platform erosion.
Definition cell.cpp:880
void SetFloodBySetupSurge(void)
Set this cell as flooded by setup surge.
Definition cell.cpp:149
int m_nShadowZoneNumber
If this cell is within a shadow zone, this is the ID number of the shadow zone.
Definition cell.h:110
bool bIsinThisShadowZone(int const) const
Returns true if this cell is in the shadow zone with number given by the parameter,...
Definition cell.cpp:357
double m_dDeepWaterWavePeriod
Wave period if this is a deep water cell.
Definition cell.h:153
double m_dTotPotentialBeachErosion
Total depth of unconsolidated beach sediment eroded; if no supply-limitation.
Definition cell.h:210
double m_dSuspendedSediment
Suspended sediment as depth equivalent (m)
Definition cell.h:159
double m_dTotTalusSandDeposition
Total depth of unconsolidated sand sediment deposited as a result of cliff collapse.
Definition cell.h:198
double dGetTotConsThickness(void) const
Returns the total thickness of consolidated sediment (all size classes) on this cell.
Definition cell.cpp:751
void SetCheckFloodCell(void)
Set this cell as checked (flood switch)
Definition cell.cpp:422
void SetInContiguousSea(void)
Set this cell as a sea cell.
Definition cell.cpp:125
int m_nDownDriftZoneNumber
If this cell is within a downdrift zone, this is the ID number of the downdrift zone.
Definition cell.h:113
double m_dWaveHeight
Wave height (m)
Definition cell.h:132
void SetWaveAngle(double const)
Sets the wave orientation on this cell, also increments the total wave orientation.
Definition cell.cpp:974
void SetProfileID(int const)
Sets the ID number of the coast-normal profile which this cell is 'under'.
Definition cell.cpp:283
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:203
double m_dSlope
Slope at this cell (degrees or unitless)
Definition cell.h:122
void SetShadowZoneBoundary(void)
Sets a flag to show that this cell is a shadow zone boundary.
Definition cell.cpp:191
double dGetThisIterCliffCollapseErosionCoarse(void) const
Returns the depth of this-timestep coarse-sized sediment cliff collapse on this cell.
Definition cell.cpp:1073
void SetBasementElev(double const)
Sets this cell's basement elevation.
Definition cell.cpp:470
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:1049
void AddSandTalusDeposition(double const)
Increments the depth of this-timestep sand-sized talus from cliff collapse on this cell,...
Definition cell.cpp:1097
double dGetSuspendedSediment(void) const
Returns the suspended sediment depth equivalent on this cell.
Definition cell.cpp:531
bool bIsProfile(void) const
Returns true if this cell is 'under' a coastline normal.
Definition cell.cpp:295
double m_dUnconsD50
d50 of unconsolidated sediment on top layer with unconsolidated sediment depth > 0
Definition cell.h:225
double m_dInterventionHeight
Height of intervention structure.
Definition cell.h:228
vector< CRWCellLayer > m_VLayerAboveBasement
Number of layers NOT including the basement. Layer 0 is the lowest.
Definition cell.h:236
bool m_bFloodLine
Switch to indicate that this cell is 'under' a runup flood line.
Definition cell.h:62
bool bIsCoastline(void) const
Returns true if the cell is a coastline.
Definition cell.cpp:244
void SetPolygonCoastID(int const)
Sets the coast number of the polygon which 'contains' this cell.
Definition cell.cpp:329
void UnSetCheckFloodCell(void)
Set the cell as not checked (flood switch)
Definition cell.cpp:428
void SetAsCliff(bool const)
Marks this cell as a cliff cell.
Definition cell.cpp:259
void SetCellDeepWaterWaveHeight(double const)
Sets the deep water wave height on this cell.
Definition cell.cpp:993
int m_nCoastlineID
If this cell is 'under' a coastline, this is the ID number of the coast.
Definition cell.h:92
void SetCheckCell(void)
double dGetThisIterCliffCollapseErosionSand(void) const
Returns the depth of this-timestep sand-sized sediment cliff collapse on this cell.
Definition cell.cpp:1067
bool bBasementElevIsMissingValue(void) const
Returns true if this cells's basement data is NODATA, is needed for irregularly-shaped DEMs.
Definition cell.cpp:494
double dGetTotCliffCollapseCoarse(void) const
Returns the running total depth of coarse-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1091
int m_nProfileCoastID
If this cell is 'under' a coast-normal profile, this is the ID number of the profile's coast.
Definition cell.h:98
bool m_bWaveFlood
Switch to indicate that this cell is 'under' a runup wave flood line.
Definition cell.h:65
double m_dCliffCollapseCoarseThisIter
Depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:183
CRWCellLandform * pGetLandform(void)
Returns a pointer to this cell's CRWCellLandform object.
Definition cell.cpp:452
void SetBeachProtectionFactor(double const)
Definition cell.cpp:1037
void SetAsCoastline(int const)
Marks this cell with a coastline ID nunber.
Definition cell.cpp:238
void SetWaveFlood(void)
Set this cell as flooded by swl + surge + setup + runup.
Definition cell.cpp:375
double m_dTotSeaDepth
Definition cell.h:129
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:569
bool m_bFloodBySetupSurge
TODO 007 What is this used for?
Definition cell.h:83
int m_nProfileID
If this cell is 'under' a coast-normal profile, this is the ID number of the profile.
Definition cell.h:95
double dGetThisIterTotWaterLevel(void) const
Returns the total water level at current iteration.
Definition cell.cpp:638
Geometry cass used to represent the raster grid of cell objects.
Definition raster_grid.h:33
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:31
This file contains global definitions for CoastalME.
Contains CGeomRasterGrid definitions.