Ice Sheet System Model  4.18
Code documentation
triangle.h
Go to the documentation of this file.
1 
5 #ifndef _SHARED_TRIANGLE_H
6 #define _SHARED_TRIANGLE_H
7 
8 #include <stdio.h>
9 #include <math.h>
10 
11 //#define REAL double //took it out because it may conflict with stdlib.h defines. put back if necessary
12 int AssociateSegmentToElement(int** psegments,int nseg,int* index,int nel);
13 int OrderSegments(int** psegments,int nseg, int* index,int nel);
14 int GridInsideHole(double* px0,double* py0,int n,double* x,double* y);
15 int FindElement(int A,int B,int* index,int nel);
16 int SplitMeshForRifts(int* pnel,int** pindex,int* pnods,double** px,double** py,int* pnsegs,int** psegments,int** psegmentmarkerlist);
17 int IsGridOnRift(int* riftsegments, int nriftsegs, int node);
18 int GridElementsList(int** pGridElements, int* pNumGridElements,int node,double * index,int nel);
19 int IsNeighbor(int el1,int el2,int* index);
20 int IsOnRift(int el,int nriftsegs,int* riftsegments);
21 void RiftSegmentsFromSegments(int* pnriftsegs, int** priftsegments, int nel,int* index, int nsegs,int* segments);
22 int DetermineGridElementListOnOneSideOfRift(int* pNumGridElementListOnOneSideOfRift, int** pGridElementListOnOneSideOfRift,int segmentnumber, int nriftsegs,int* riftsegments, int node,int* index,int nel);
23 int UpdateSegments(int** psegments,int** psegmentmarkerlist, int* pnsegs,int* index, double* x,double* y,int* riftsegments,int nriftsegs,int nods,int nel);
24 int FindElement(double A,double B,int* index,int nel);
25 int IsRiftPresent(int* priftflag,int* pnumrifts,int* segmentmarkerlist,int nsegs);
26 int SplitRiftSegments(int** psegments,int** psegmentmarkerlist, int* pnumsegs, int* pnumrifts,int** priftsnumsegs,int*** priftssegments,int numrifts,int nods,int nels);
27 int OrderRifts(int** priftstips,int** riftssegments,int** riftspairs,int numrifts,int* riftsnumsegments,double* x,double* y,int nods,int nels);
28 int PenaltyPairs(double*** priftspenaltypairs,int** priftsnumpenaltypairs,int numrifts,int** riftssegments,
29  int* riftsnumsegments,int** riftspairs,int* riftstips,double* x,double* y);
30 int RemoveCornersFromRifts(int** pindex,int* pnel,double** px,double** py,int* pnods,int* segments,int* segmentmarkers,int num_seg);
31 int PairRiftElements(int** priftsnumpairs,int*** priftspairs,int numrifts,int* riftsnumsegments,int** riftssegments,double* x,double* y);
32 
33 #endif /* _SHARED_TRIANGLE_H */
IsGridOnRift
int IsGridOnRift(int *riftsegments, int nriftsegs, int node)
Definition: TriangleUtils.cpp:12
GridInsideHole
int GridInsideHole(double *px0, double *py0, int n, double *x, double *y)
Definition: GridInsideHole.cpp:14
DetermineGridElementListOnOneSideOfRift
int DetermineGridElementListOnOneSideOfRift(int *pNumGridElementListOnOneSideOfRift, int **pGridElementListOnOneSideOfRift, int segmentnumber, int nriftsegs, int *riftsegments, int node, int *index, int nel)
Definition: TriangleUtils.cpp:178
OrderSegments
int OrderSegments(int **psegments, int nseg, int *index, int nel)
Definition: OrderSegments.cpp:7
IsRiftPresent
int IsRiftPresent(int *priftflag, int *pnumrifts, int *segmentmarkerlist, int nsegs)
Definition: TriangleUtils.cpp:482
AssociateSegmentToElement
int AssociateSegmentToElement(int **psegments, int nseg, int *index, int nel)
Definition: AssociateSegmentToElement.cpp:7
UpdateSegments
int UpdateSegments(int **psegments, int **psegmentmarkerlist, int *pnsegs, int *index, double *x, double *y, int *riftsegments, int nriftsegs, int nods, int nel)
Definition: TriangleUtils.cpp:241
RiftSegmentsFromSegments
void RiftSegmentsFromSegments(int *pnriftsegs, int **priftsegments, int nel, int *index, int nsegs, int *segments)
Definition: TriangleUtils.cpp:113
RemoveCornersFromRifts
int RemoveCornersFromRifts(int **pindex, int *pnel, double **px, double **py, int *pnods, int *segments, int *segmentmarkers, int num_seg)
Definition: TriangleUtils.cpp:797
IsOnRift
int IsOnRift(int el, int nriftsegs, int *riftsegments)
Definition: TriangleUtils.cpp:103
PairRiftElements
int PairRiftElements(int **priftsnumpairs, int ***priftspairs, int numrifts, int *riftsnumsegments, int **riftssegments, double *x, double *y)
Definition: TriangleUtils.cpp:436
SplitMeshForRifts
int SplitMeshForRifts(int *pnel, int **pindex, int *pnods, double **px, double **py, int *pnsegs, int **psegments, int **psegmentmarkerlist)
Definition: SplitMeshForRifts.cpp:7
FindElement
int FindElement(int A, int B, int *index, int nel)
Definition: TriangleUtils.cpp:339
GridElementsList
int GridElementsList(int **pGridElements, int *pNumGridElements, int node, double *index, int nel)
IsNeighbor
int IsNeighbor(int el1, int el2, int *index)
Definition: TriangleUtils.cpp:87
SplitRiftSegments
int SplitRiftSegments(int **psegments, int **psegmentmarkerlist, int *pnumsegs, int *pnumrifts, int **priftsnumsegs, int ***priftssegments, int numrifts, int nods, int nels)
Definition: TriangleUtils.cpp:350
PenaltyPairs
int PenaltyPairs(double ***priftspenaltypairs, int **priftsnumpenaltypairs, int numrifts, int **riftssegments, int *riftsnumsegments, int **riftspairs, int *riftstips, double *x, double *y)
Definition: TriangleUtils.cpp:662
OrderRifts
int OrderRifts(int **priftstips, int **riftssegments, int **riftspairs, int numrifts, int *riftsnumsegments, double *x, double *y, int nods, int nels)
Definition: TriangleUtils.cpp:508