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 This file is part of CoastalME, the Coastal Modelling Environment.
18
19 CoastalME 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.
20
21 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.
22
23 You 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.
24===============================================================================================================================*/
25#include <vector>
26using std::vector;
27
28#include "cell_landform.h"
29#include "cell_layer.h"
30#include "cme.h"
31#include "raster_grid.h"
32
33class CGeomRasterGrid; // Forward declaration
34
36{
37 friend class CSimulation;
38
39 private:
42
45
48
51
54
57
58 // //! TODO 007 Finish surge and runup stuff
59 // bool m_bCheckCell;
60
63
66
69
72
75
78
81
84
87
90
93
96
99
102
105
108
111
114
117
120
123
126
129
132
135
138
141
144
147
150
153
156
159
162
165
168
171
174
177
180
183
186
189
192
195
198
201
204
207
210
213
216
219
222
225
228
231
234
235 // Initialize these as empty vectors
236
238 vector<CRWCellLayer> m_VLayerAboveBasement;
239
241 vector<double> m_VdAllHorizonTopElev;
242
243 protected:
244 public:
246
247 CGeomCell();
248 ~CGeomCell(void);
249
250 void SetInContiguousSea(void);
251 bool bIsInContiguousSea(void) const;
252
253 void SetInContiguousFlood(void);
254 void UnSetInContiguousFlood(void);
255 void SetFloodBySetupSurge(void);
256 bool bIsFloodBySetupSurge(void) const;
257 void SetFloodBySetupSurgeRunup(void);
258 bool bIsFloodBySetupSurgeRunup(void) const;
259 bool bIsInContiguousSeaFlood(void) const;
260
261 void SetInActiveZone(bool const);
262 bool bIsInActiveZone(void) const;
263 bool bPotentialPlatformErosion(void) const;
264 bool bActualPlatformErosion(void) const;
265 void SetAsCoastline(int const);
266 bool bIsCoastline(void) const;
267 int nGetCoastline(void) const;
268 void SetAsFloodline(bool const);
269 bool bIsFloodline(void) const;
270
271 void SetAsCliffToe(bool const);
272 bool bIsCliffToe(void) const;
273
274 int nGetProfileID(void) const;
275 bool bIsProfile(void) 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 int nGetPolygonID(void) const;
293 int nGetPolygonCoastID(void) const;
294 void SetCoastAndPolygonID(int const, int const);
295
297
298 void SetWaveFlood(void);
299 bool bElevLessThanSWL(void) const;
300
301 void SetCheckCell(void);
302 bool bIsCellCheck(void) const;
303
304 void SetCheckFloodCell(void);
305 void UnSetCheckFloodCell(void);
306 bool bIsCellFloodCheck(void) const;
307
308 void SetLocalConsSlope(double const);
309 double dGetConsSedSlope(void) const;
310
311 void SetSlopeForCliffToe(double const);
312 double dGetSlopeForCliffToe(void) const;
313
314 bool bIsInundated(void);
315 double dGetThisIterSWL(void) const;
316 double dGetThisIterTotWaterLevel(void) const; // Not used TODO 007 Finish surge and runup stuff
317 void SetSeaDepth(void);
318 double dGetSeaDepth(void) const;
319 void InitCell(void);
320 double dGetTotSeaDepth(void) const;
321
322 void SetWaveHeight(double const);
323 double dGetWaveHeight(void) const;
324 double dGetTotWaveHeight(void) const;
325 void SetWaveAngle(double const);
326 double dGetWaveAngle(void) const;
327 double dGetTotWaveAngle(void) const;
328
329 void SetCellDeepWaterWaveHeight(double const);
330 double dGetCellDeepWaterWaveHeight(void) const;
331 void SetCellDeepWaterWaveAngle(double const);
332 double dGetCellDeepWaterWaveAngle(void) const;
333 void SetCellDeepWaterWavePeriod(double const);
334 double dGetCellDeepWaterWavePeriod(void) const;
335
337
338 void SetBeachProtectionFactor(double const);
339 double dGetBeachProtectionFactor(void) const;
340
341 void SetSuspendedSediment(double const);
342 void AddSuspendedSediment(double const);
343 double dGetSuspendedSediment(void) const;
344 double dGetTotSuspendedSediment(void) const;
345
346 int nGetTopNonZeroLayerAboveBasement(void) const;
347 int nGetNumOfTopLayerAboveBasement(void) const;
348
349 int nGetNumLayers(void) const;
350 double dGetConsSedTopElevForLayerAboveBasement(int const) const;
352 void AppendLayers(int const);
353 void CalcAllLayerElevsAndD50(void);
354 int nGetLayerAtElev(double const) const;
355 double dCalcLayerElev(const int);
356
357 double dGetConsFineDepthAllLayers(void) const;
358 double dGetUnconsFineDepthAllLayers(void) const;
359 double dGetConsSandDepthAllLayers(void) const;
360 double dGetUnconsSandDepthAllLayers(void) const;
361 double dGetConsCoarseDepthAllLayers(void) const;
362 double dGetUnconsCoarseDepthAllLayers(void) const;
363
364 double dGetAllConsDepthAllLayers(void) const;
365 double dGetAllUnconsDepthAllLayers(void) const;
366 double dGetAllSedDepthAllLayers(void) const;
367
368 double dGetTalusDepth(void) const;
369
370 void SetBasementElev(double const);
371 double dGetBasementElev(void) const;
372 bool bBasementElevIsMissingValue(void) const;
373 double dGetAllSedTopElevOmitTalus(void) const;
374 double dGetAllSedTopElevIncTalus(void);
375 double dGetTopElevIncSea(void);
376 double dGetConsSedTopElevOmitTalus(void) const;
377 double dGetConsSedTopElevIncTalus(void);
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 AddSandTalusToUncons(double const);
404 double dGetTotSandTalusToUncons(void);
405 void AddCoarseTalusToUncons(double const);
407 double dGetTotCoarseTalusToUncons(void);
408
409 void SetPotentialBeachErosion(double const);
410 double dGetPotentialBeachErosion(void) const;
411 double dGetTotPotentialBeachErosion(void) const;
412 void SetActualBeachErosion(double const);
413 double dGetActualBeachErosion(void) const;
414 double dGetTotActualBeachErosion(void) const;
415 // bool bActualBeachErosionThisIter(void) const;
416
417 void IncrBeachDeposition(double const);
418 double dGetBeachDeposition(void) const;
419 double dGetTotBeachDeposition(void) const;
420 // bool bBeachDepositionThisIter(void) const;
421
422 bool bBeachErosionOrDepositionThisIter(void) const;
423
424 double dGetUnconsD50(void) const;
425
426 int nGetInterventionClass(void) const;
427 void SetInterventionHeight(double const);
428 double dGetInterventionHeight(void) const;
429 double dGetInterventionTopElev(void) const;
430
431 void SetShadowZoneNumber(int const);
432 int nGetShadowZoneNumber(void) const;
433 bool bIsinThisShadowZone(int const) const;
434 bool bIsinAnyShadowZone(void) const;
435 void SetDownDriftZoneNumber(int const);
436 int nGetDownDriftZoneNumber(void) const;
437};
438#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:164
void SetSlopeForCliffToe(double const)
Sets this cell's slope for cliff toe locating.
Definition cell.cpp:492
double dGetTotCliffCollapseFine(void) const
Returns the running total depth of fine-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1050
int nGetNumLayers(void) const
Returns the number of sediment layers on the cell (some could have zero thickness)
Definition cell.cpp:553
double dGetTotCoarseTalusToUncons(void)
Returns the grand total of coarse-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1138
void SetCellDeepWaterWavePeriod(double const)
Sets the deep water wave Period on this cell.
Definition cell.cpp:988
double dGetTotWaveHeight(void) const
Returns the total wave height on this cell.
Definition cell.cpp:939
bool bIsInContiguousSeaFlood(void) const
Is this cell in the contiguous sea flood area?
Definition cell.cpp:171
void SetInContiguousFlood(void)
Set this cell as in the contiguous runup flood area.
Definition cell.cpp:135
double dGetThisIterCliffCollapseErosionFine(void) const
Returns the depth of this-timestep fine-sized sediment cliff collapse on this cell.
Definition cell.cpp:1032
bool bIsCliffToe(void) const
Returns true if this cell is marked as a cliff toe.
Definition cell.cpp:264
double m_dTotTalusCoarseDeposition
Total depth of unconsolidated coarse sediment deposited as a result of cliff collapse.
Definition cell.h:194
double dGetTotCoarseTalusDeposition(void) const
Returns the total depth of coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1100
double m_dTotPotentialPlatformErosion
Total depth of sediment eroded from the shore platform, if no supply-limitation.
Definition cell.h:158
int m_nBoundingBoxEdge
If this cell is an edge (or bounding box) cell, this specifies the edge.
Definition cell.h:80
double m_dWaveAngle
Wave orientation.
Definition cell.h:128
double dGetTotPotentialPlatformErosion(void) const
Get total potential (unconstrained) shore platform erosion.
Definition cell.cpp:836
void SetAsFloodline(bool const)
Marks this cell as a flood line.
Definition cell.cpp:270
double dGetConsFineDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of fine consolidated sediment on this ce...
Definition cell.cpp:658
bool bIsinAnyShadowZone(void) const
Returns true if this cell is in any shadow zone, false otherwise.
Definition cell.cpp:350
double m_dSandTalusToUnconsThisIter
Depth of sand-sized cliff collapse talus moved to unconsolidated sediment this timestep.
Definition cell.h:197
bool bIsFloodBySetupSurge(void) const
Is this cell flooded by setup surge?
Definition cell.cpp:153
bool m_bCheckFloodCell
TODO 007 Finish surge and runup stuff.
Definition cell.h:62
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:759
double dCalcLayerElev(const int)
For this cell, calculates the elevation of the top of a given layer.
Definition cell.cpp:811
int nGetShadowZoneNumber(void) const
Gets the number of the shadow zone that this cell is in.
Definition cell.cpp:335
void SetWaveHeight(double const)
Sets the wave height on this cell, also increments the total wave height.
Definition cell.cpp:923
bool bIsShadowZoneBoundary(void) const
Returns a flag which shows whether this cell is a shadow zone boundary.
Definition cell.cpp:195
double dGetCellDeepWaterWavePeriod(void) const
Returns the deep water wave period on this cell.
Definition cell.cpp:994
void InitCell(void)
Initialise values for this cell.
Definition cell.cpp:867
double dGetCellDeepWaterWaveAngle(void) const
Returns the deep water wave orientation on this cell.
Definition cell.cpp:982
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:297
bool bBeachErosionOrDepositionThisIter(void) const
Returns true only if this cell has had no deposition or erosion this timestep.
Definition cell.cpp:1213
double dGetTotPotentialBeachErosion(void) const
Get total potential (supply-unconstrained) beach erosion.
Definition cell.cpp:1157
bool bIsFloodBySetupSurgeRunup(void) const
Is this cell flooded by setup surge runup?
Definition cell.cpp:165
void SetInActiveZone(bool const)
Sets a flag to show whether this cell is in the active zone.
Definition cell.cpp:177
double dGetPotentialBeachErosion(void) const
Get potential (unconstrained) beach erosion.
Definition cell.cpp:1151
bool bIsInContiguousSea(void) const
Is this a sea cell?
Definition cell.cpp:129
double m_dBeachProtectionFactor
Only meaningful if in zone of platform erosion. 0 = fully protected; 1 = ! no protection.
Definition cell.h:146
int nGetNumOfTopLayerAboveBasement(void) const
Returns the index of the topmost sediment layer (layer 0 being the one just above basement)....
Definition cell.cpp:577
bool m_bInContiguousSea
Switch to indicate if this is a sea cell, contiguous with other sea cells.
Definition cell.h:41
double dGetTotSandTalusToUncons(void)
Returns the grand total of sand-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1119
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:316
int nGetCoastline(void) const
Returns the ID of the coastline, or INT_NODATA if not a coastline.
Definition cell.cpp:252
bool bIsBoundingBoxEdge(void) const
Is this an edge bounding-box cell?
Definition cell.cpp:117
double m_dTotActualBeachErosion
Total depth of unconsolidated beach sediment actually eroded.
Definition cell.h:218
double dGetTotBeachDeposition(void) const
Get beach erosion.
Definition cell.cpp:1201
void SetSuspendedSediment(double const)
Sets this cell's suspended sediment depth equivalent, it also increments the running total of suspend...
Definition cell.cpp:525
double dGetTotWaveAngle(void) const
Returns the total wave orientation on this cell.
Definition cell.cpp:958
void IncrBeachDeposition(double const)
Increment this-timestep beach deposition, also increment total beach deposition.
Definition cell.cpp:1188
void SetActualPlatformErosion(double const)
Set this-timestep actual (constrained) shore platform erosion and increment total actual shore platfo...
Definition cell.cpp:842
double dGetSeaDepth(void) const
Returns the depth of seawater on this cell.
Definition cell.cpp:513
bool bPotentialPlatformErosion(void) const
Returns true if this cell has had potential platform erosion on this cell this timestep.
Definition cell.cpp:225
double dGetTotActualBeachErosion(void) const
Get total actual (supply-constrained) beach erosion.
Definition cell.cpp:1176
double m_dBasementElevation
Elevation of basement surface (m)
Definition cell.h:110
int m_nCoastlineNormal
If this cell is 'under' a coastline normal, this is the number of the normal.
Definition cell.h:98
double dGetCellDeepWaterWaveHeight(void) const
Returns the deep water wave height on this cell.
Definition cell.cpp:970
double dGetInterventionTopElev(void) const
Returns the elevation of the top of the intervention, assuming it rests on the sediment-top surface.
Definition cell.cpp:1250
double m_dLocalConsSlope
Used in erosion calculations, stored here for display purposes.
Definition cell.h:107
void SetAsCliffToe(bool const)
Marks this cell as a cliff toe cell.
Definition cell.cpp:258
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:560
bool m_bFloodBySetupSurgeRunup
TODO 007 Finish surge and runup stuff.
Definition cell.h:77
double dGetTotSandTalusDeposition(void) const
Returns the total depth of sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1094
double dGetSlopeForCliffToe(void) const
Returns this cell's slope for cliff toe locationg.
Definition cell.cpp:498
double m_dBeachDepositionThisIter
Depth of unconsolidated beach sediment deposited this timestep.
Definition cell.h:221
bool m_bPossibleFloodStartCell
TODO 007 Finish surge and runup stuff.
Definition cell.h:71
double dGetTotCliffCollapseSand(void) const
Returns the running total depth of sand-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1056
double dGetBeachDeposition(void) const
Get beach deposition.
Definition cell.cpp:1195
void AppendLayers(int const)
Appends sediment layers.
Definition cell.cpp:752
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:207
int m_nPolygonCoastID
If this cell is within a polygon, this is the ID number of the polygon's coast.
Definition cell.h:95
void SetActualBeachErosion(double const)
Set this-timestep actual (supply-constrained) beach erosion and increment total actual beach erosion.
Definition cell.cpp:1163
double dGetBeachProtectionFactor(void) const
Returns this cell's beach protection factor.
Definition cell.cpp:1014
double m_dTalusSandDepositionThisIter
Depth of unconsolidated sand sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:185
double m_dTalusCoarseDepositionThisIter
Depth of unconsolidated coarse sediment deposited as a result of cliff collapse this timestep.
Definition cell.h:191
double m_dTotBeachDeposition
Total depth of unconsolidated beach sediment deposited.
Definition cell.h:224
void AddCoarseTalusDeposition(double const)
Increments the depth of this-timestep coarse-sized cliff collapse talus on this cell,...
Definition cell.cpp:1075
void SetPotentialBeachErosion(double const)
Set potential (unconstrained) beach erosion and increment total beach potential erosion.
Definition cell.cpp:1144
double m_dTotWaveHeight
Total wave height (m) (used to calc average)
Definition cell.h:125
int nGetPolygonID(void) const
Returns the coast ID number of the polygon which 'contains' this cell (returns INT_NODATA if the cell...
Definition cell.cpp:310
double dGetUnconsFineDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of fine unconsolidated sediment on this ...
Definition cell.cpp:669
double dGetThisIterCoarseTalusToUncons(void)
Returns the this-iteration total of coarse-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1132
~CGeomCell(void)
Destructor.
Definition cell.cpp:100
int nGetBoundingBoxEdge(void) const
Returns the number of the bounding-box edge, or NO_DIRECTION if it is not.
Definition cell.cpp:111
bool bIsInActiveZone(void) const
Returns a flag which shows whether this cell is in the active zone.
Definition cell.cpp:183
CRWCellLayer * pGetLayerAboveBasement(int const)
Return a reference to the Nth sediment layer (layer 0 being just above basement)
Definition cell.cpp:603
double m_dTotWaveAngle
Total wave orientation (used to calc average)
Definition cell.h:134
void SetInterventionHeight(double const)
Sets the intervention height.
Definition cell.cpp:1238
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:282
double m_dCliffCollapseSandThisIter
Depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:170
double dGetThisIterCliffCollapseCoarseTalusDeposition(void) const
Retuns the depth of this-timestep coarse talus deposition from cliff collapse on this cell.
Definition cell.cpp:1088
double dGetInterventionHeight(void) const
Returns the intervention height.
Definition cell.cpp:1244
bool bIsCellCheck(void) const
double m_dPotentialPlatformErosionThisIter
Depth of sediment on the shore platform that could be eroded this timestep, if no supply-limitation.
Definition cell.h:155
double m_dTotSandCliffCollapse
Total depth of sand sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:179
double dGetAllUnconsDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of unconsolidated sediment (all size cla...
Definition cell.cpp:735
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:303
double dGetThisIterSWL(void) const
Returns the sea surface elevation at the current iteration.
Definition cell.cpp:646
double dGetUnconsCoarseDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of coarse unconsolidated sediment on thi...
Definition cell.cpp:713
int nGetInterventionClass(void) const
Gets the intervention class for this cell, or returns INT_NODATA if there is not an intervention here...
Definition cell.cpp:1228
void SetLocalConsSlope(double const)
Sets the local slope of the consolidated sediment only.
Definition cell.cpp:468
double dGetThisIterCliffCollapseSandTalusDeposition(void) const
Returns the depth of this-timestep sand talus deposition from cliff collapse on this cell.
Definition cell.cpp:1082
void SetDownDriftZoneNumber(int const)
Sets the down drift zone number.
Definition cell.cpp:450
static CGeomRasterGrid * m_pGrid
Definition cell.h:245
double dGetWaveHeight(void) const
Returns the wave height on this cell.
Definition cell.cpp:933
double dGetWaveAngle(void) const
Returns the wave orientation on this cell.
Definition cell.cpp:952
double dGetTotSeaDepth(void) const
Returns the total depth of seawater on this cell.
Definition cell.cpp:519
double m_dTotFineCliffCollapse
Total depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:176
bool bIsInundated(void)
Returns true if the elevation of the sediment top surface (both consolidated and unconsolidated,...
Definition cell.cpp:640
bool bIsFloodline(void) const
Returns true if the cell is a flood line.
Definition cell.cpp:276
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:794
double dGetConsSedTopElevForLayerAboveBasement(int const) const
Returns the elevation of the top of the consolidated sediment only, for a given layer (layer 0 being ...
Definition cell.cpp:586
double m_dTotCoarseCliffCollapse
Total depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse.
Definition cell.h:182
CRWCellLandform m_Landform
This cell's landform data.
Definition cell.h:233
bool bElevLessThanSWL(void) const
Returns true if the top elevation (sediment and talus, plus any intervention) of this cell is less th...
Definition cell.cpp:410
double dGetConsSedTopElevOmitTalus(void) const
Returns the elevation of the top surface of sediment (both consolidated and unconsolidated) for this ...
Definition cell.cpp:622
void SetCoastAndPolygonID(int const, int const)
Sets the coast number, and the polygon ID, of the polygon which 'contains' this cell.
Definition cell.cpp:322
double m_dCliffCollapseFineThisIter
Depth of fine sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:167
double m_dDeepWaterWaveHeight
Wave height if this is a deep water cell.
Definition cell.h:137
double m_dActualBeachErosionThisIter
Depth of unconsolidated beach sediment actually eroded this timestep.
Definition cell.h:215
double m_dTotSuspendedSediment
Total depth of suspended sediment (m) since simulation start (used to calc average)
Definition cell.h:152
bool m_bInContiguousFlood
Switch to indicate that this cell is in the contiguous runup flood area.
Definition cell.h:44
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:1000
double dGetUnconsSandDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of sand-sized unconsolidated sediment on...
Definition cell.cpp:691
void SetBoundingBoxEdge(int const)
Set the edge number if this cell is an edge bounding-box cell.
Definition cell.cpp:105
void SetFloodBySetupSurgeRunup(void)
Set this cell as flooded by setup surge runup.
Definition cell.cpp:159
void SetPotentialPlatformErosion(double const)
Set potential (unconstrained) shore platform erosion and increment total shore platform potential ero...
Definition cell.cpp:823
bool m_bIsInActiveZone
Switch to indicate that this cell is in the active zone.
Definition cell.h:47
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:213
double dGetAllConsDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of consolidated sediment (all size class...
Definition cell.cpp:724
double dGetConsSedTopElevIncTalus(void)
Returns the elevation of the top surface of sediment (both consolidated and unconsolidated) plus talu...
Definition cell.cpp:628
void AddSuspendedSediment(double const)
Adds to this cell's suspended sediment depth equivalent, it also increments the running total of susp...
Definition cell.cpp:533
bool m_bShadowBoundary
Switch to show this cell is 'under' a shadow boundary.
Definition cell.h:65
int nGetDownDriftZoneNumber(void) const
Gets the down drift zone number.
Definition cell.cpp:456
void UnSetInContiguousFlood(void)
Set this cell as not in the contiguous runup flood area.
Definition cell.cpp:141
friend class CSimulation
Definition cell.h:37
double dGetUnconsD50(void) const
Returns the D50 of unconsolidated sediment on this cell.
Definition cell.cpp:1222
double m_dPotentialBeachErosionThisIter
Depth of unconsolidated beach sediment that could be eroded this timestep, if no supply-limitation.
Definition cell.h:209
bool bIsCellFloodCheck(void) const
Returns true if this cell is checked, false otherwise (flood switch)
Definition cell.cpp:444
double dGetTotActualPlatformErosion(void) const
Get total actual (constrained) shore platform erosion.
Definition cell.cpp:855
double m_dSlopeForCliffToe
Slope at this cell (degrees or unitless)
Definition cell.h:113
double dGetConsSandDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of sand-sized consolidated sediment on t...
Definition cell.cpp:680
double dGetThisIterSandTalusToUncons(void)
Returns the this-iteration total of sand-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1113
vector< double > m_VdAllHorizonTopElev
Number of layer-top elevations (inc. that of the basement, which is m_VdAllHorizonTopElev[0]) size 1 ...
Definition cell.h:241
bool bActualPlatformErosion(void) const
Returns true if we have had actual platform erosion on this cell during this timestep.
Definition cell.cpp:231
double m_dWavePeriod
Wave period (s)
Definition cell.h:131
double m_dSeaDepth
Depth of still water (m), is zero if not inundated.
Definition cell.h:116
double dGetBasementElev(void) const
Returns this cell's basement elevation.
Definition cell.cpp:486
int m_nPolygonID
If this cell is within a polygon, this is the ID of the polygon.
Definition cell.h:92
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:219
double m_dActualPlatformErosionThisIter
Depth of sediment actually eroded from the shore platform this timestep.
Definition cell.h:161
double m_dTotSandTalusToUncons
Total depth of sand-sized cliff collapse talus moved to unconsolidated sediment.
Definition cell.h:200
double dGetPotentialPlatformErosion(void) const
Get potential (unconstrained) shore platform erosion.
Definition cell.cpp:830
double dGetTotSuspendedSediment(void) const
Returns the total suspended sediment depth equivalent on this cell.
Definition cell.cpp:547
double m_dDeepWaterWaveAngle
Wave orientation if this is a deep water cell.
Definition cell.h:140
double dGetActualBeachErosion(void) const
Get actual (supply-constrained) beach erosion.
Definition cell.cpp:1170
void SetSeaDepth(void)
Returns the depth of seawater on this cell if the sediment top (including talus and intervention) is ...
Definition cell.cpp:861
void SetShadowZoneNumber(int const)
Set the number of the shadow zone that this cell is in.
Definition cell.cpp:329
double dGetAllSedTopElevOmitTalus(void) const
Returns the elevation of the top surface of sediment (both consolidated and unconsolidated) for this ...
Definition cell.cpp:610
void SetCellDeepWaterWaveAngle(double const)
Sets the deep water wave orientation on this cell.
Definition cell.cpp:976
bool m_bPossibleCoastStartCell
Switch to show that this cell could be the start of a coastline.
Definition cell.h:68
void AddSandTalusToUncons(double const)
Adds to the totals of sand-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1106
CGeomCell()
Constructor with initialisation list.
Definition cell.cpp:36
double dGetActualPlatformErosion(void) const
Get actual (constrained) shore platform erosion.
Definition cell.cpp:849
void SetFloodBySetupSurge(void)
Set this cell as flooded by setup surge.
Definition cell.cpp:147
int m_nShadowZoneNumber
If this cell is within a shadow zone, this is the ID number of the shadow zone.
Definition cell.h:101
bool bIsinThisShadowZone(int const) const
Returns true if this cell is in the shadow zone with number given by the parameter,...
Definition cell.cpp:341
double m_dTotCoarseTalusToUncons
Total depth of coarse-sized cliff collapse talus moved to unconsolidated sediment.
Definition cell.h:206
double m_dDeepWaterWavePeriod
Wave period if this is a deep water cell.
Definition cell.h:143
double m_dTotPotentialBeachErosion
Total depth of unconsolidated beach sediment eroded; if no supply-limitation.
Definition cell.h:212
double m_dSuspendedSediment
Suspended sediment as depth equivalent (m)
Definition cell.h:149
double m_dTotTalusSandDeposition
Total depth of unconsolidated sand sediment deposited as a result of cliff collapse.
Definition cell.h:188
void SetCheckFloodCell(void)
Set this cell as checked (flood switch)
Definition cell.cpp:432
double m_dCoarseTalusToUnconsThisIter
Depth of coarse-sized cliff collapse talus moved to unconsolidated sediment this timestep.
Definition cell.h:203
void SetInContiguousSea(void)
Set this cell to be a sea cell.
Definition cell.cpp:123
double dGetConsCoarseDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of coarse consolidated sediment on this ...
Definition cell.cpp:702
int m_nDownDriftZoneNumber
If this cell is within a downdrift zone, this is the ID number of the downdrift zone.
Definition cell.h:104
double m_dWaveHeight
Wave height (m)
Definition cell.h:122
double dGetTopElevIncSea(void)
Returns the topmost elevation of the cell, including sea (sediment top elevation (both consolidated a...
Definition cell.cpp:634
void SetWaveAngle(double const)
Sets the wave orientation on this cell, also increments the total wave orientation.
Definition cell.cpp:945
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:201
void SetShadowZoneBoundary(void)
Sets a flag to show that this cell is a shadow zone boundary.
Definition cell.cpp:189
bool m_bCliffToe
Is this cell a cliff toe?
Definition cell.h:50
double dGetThisIterCliffCollapseErosionCoarse(void) const
Returns the depth of this-timestep coarse-sized sediment cliff collapse on this cell.
Definition cell.cpp:1044
void SetBasementElev(double const)
Sets this cell's basement elevation.
Definition cell.cpp:480
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:1020
double dGetAllSedDepthAllLayers(void) const
Returns the total (all layers) depth (in external CRS units) of all sediment (all size classes,...
Definition cell.cpp:746
void AddSandTalusDeposition(double const)
Increments the depth of this-timestep sand-sized cliff collapse talus on this cell,...
Definition cell.cpp:1068
double dGetSuspendedSediment(void) const
Returns the suspended sediment depth equivalent on this cell.
Definition cell.cpp:541
bool bIsProfile(void) const
Returns true if this cell is 'under' a coastline normal.
Definition cell.cpp:288
double m_dUnconsD50
d50 of unconsolidated sediment on top layer with unconsolidated sediment depth > 0
Definition cell.h:227
double dGetConsSedSlope(void) const
Returns the local slope of the consolidated sediment only.
Definition cell.cpp:474
double m_dInterventionHeight
Height of intervention structure.
Definition cell.h:230
vector< CRWCellLayer > m_VLayerAboveBasement
Cell sediment layers NOT including the basement. Layer 0 is the lowest.
Definition cell.h:238
bool m_bFloodLine
Switch to indicate that this cell is 'under' a runup flood line TODO 007 Finish surge and runup stuff...
Definition cell.h:53
bool bIsCoastline(void) const
Returns true if the cell is a coastline.
Definition cell.cpp:243
void UnSetCheckFloodCell(void)
Set the cell as not checked (flood switch)
Definition cell.cpp:438
void SetCellDeepWaterWaveHeight(double const)
Sets the deep water wave height on this cell.
Definition cell.cpp:964
void AddCoarseTalusToUncons(double const)
Adds to the totals of coarse-sized talus moved to unconsolidated sediment on this cell.
Definition cell.cpp:1125
int m_nCoastlineID
If this cell is 'under' a coastline, this is the ID number of the coast.
Definition cell.h:83
void SetCheckCell(void)
double dGetThisIterCliffCollapseErosionSand(void) const
Returns the depth of this-timestep sand-sized sediment cliff collapse on this cell.
Definition cell.cpp:1038
bool bBasementElevIsMissingValue(void) const
Returns true if this cells's basement data is NODATA, is needed for irregularly-shaped DEMs.
Definition cell.cpp:504
double dGetTotCliffCollapseCoarse(void) const
Returns the running total depth of coarse-sized sediment eroded by cliff collapse on this cell.
Definition cell.cpp:1062
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:89
bool m_bWaveFlood
Switch to indicate that this cell is 'under' a runup wave flood line TODO 007 Finish surge and runup ...
Definition cell.h:56
double m_dCliffCollapseCoarseThisIter
Depth of coarse sediment (consolidated and unconsolidated) removed via cliff collapse this timestep.
Definition cell.h:173
double dGetAllSedTopElevIncTalus(void)
Returns the elevation of the top surface of sediment (both consolidated and unconsolidated) plus talu...
Definition cell.cpp:616
CRWCellLandform * pGetLandform(void)
Returns a pointer to this cell's CRWCellLandform object.
Definition cell.cpp:462
void SetBeachProtectionFactor(double const)
Definition cell.cpp:1008
void SetAsCoastline(int const)
Marks this cell with a coastline ID nunber.
Definition cell.cpp:237
void SetWaveFlood(void)
Set this cell as flooded by swl + surge + setup + runup.
Definition cell.cpp:378
double m_dTotSeaDepth
Total depth of still water (m) since beginning of simulation (used to calc average)
Definition cell.h:119
bool m_bFloodBySetupSurge
TODO 007 Finish surge and runup stuff.
Definition cell.h:74
int m_nProfileID
If this cell is 'under' a coast-normal profile, this is the ID number of the profile.
Definition cell.h:86
double dGetThisIterTotWaterLevel(void) const
Returns the total water level for the current iteration TODO 007 Finish surge and runup stuff.
Definition cell.cpp:652
double dGetTalusDepth(void) const
Returns the depth of any talus that is on this cell, in any layer.
Definition cell.cpp:359
Geometry cass used to represent the raster grid of cell objects.
Definition raster_grid.h:29
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:28
This file contains global definitions for CoastalME.
Contains CGeomRasterGrid definitions.