GRIDMAN
grid managment library
Functions/Subroutines
grid2.f File Reference

Extra and advanced methods of the data-type GRIDMAN_GRID, see gridman.f. More...

Go to the source code of this file.

Functions/Subroutines

subroutine gridman_grid_combine (GRID, GRID1, GRID2, IERR)
 Combine two grid objects into one. More...
 
subroutine gridman_grid_cells (EDGES, GRID, IERR)
 Create a list of edges which belong to each cell. More...
 
subroutine gridman_grid_points (EDGES, GRID, IERR)
 Create table of edges connected to each point. More...
 
subroutine gridman_grid_eliminate_cells (GRID_NEW, GRID, LTAKE, IERR)
 Eliminate cells from GRIDMAN_GRID object. More...
 
subroutine gridman_grid_eliminate_edges (GRID_NEW, GRID, LTAKE, IERR)
 Eliminate edges the GRIDMAN_GRID object. More...
 
subroutine gridman_grid_remove_free_edges (GRID_NEW, GRID, IERR)
 Remove edges which do not belong to any cell from the GRIDMAN_GRID object. More...
 

Detailed Description

Extra and advanced methods of the data-type GRIDMAN_GRID, see gridman.f.

Definition in file grid2.f.

Function/Subroutine Documentation

subroutine gridman_grid_combine ( type(gridman_grid)  GRID,
type(gridman_grid)  GRID1,
type(gridman_grid)  GRID2,
integer, intent(out)  IERR 
)

Combine two grid objects into one.

WARNING: if GRID exists it will be overwritten

Units of GRID1 are used in combined grid

Parameters
gridResulting combined grid
grid1First grid to be combined
grid2Second grid to be combined
[out]ierrError code

Definition at line 31 of file grid2.f.

References gridman_grid_allocate(), gridman_grid_check(), gridman_grid_deallocate(), gridman_index_copy(), gridman::gridman_sp, and gridman::gridman_unit.

Here is the call graph for this function:

subroutine gridman_grid_cells ( type(gridman_indlist)  EDGES,
type(gridman_grid)  GRID,
integer, intent(out)  IERR 
)

Create a list of edges which belong to each cell.

WARNING: array EDGES will be overwritten if already exists

Parameters
edgesResulting list of edges
gridGrid for which this list is generated
[out]ierrError code

Definition at line 177 of file grid2.f.

References gridman_grid_allocate(), gridman_grid_check(), gridman_indlist_deallocate(), gridman::gridman_sp, and gridman::gridman_unit.

Referenced by gridman_grid2d_chains(), gridman_grid2d_check(), gridman_grid2d_polygon_trajectory(), gridman_grid2d_triang(), and gridman_grid2tria().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine gridman_grid_points ( type(gridman_indlist)  EDGES,
type(gridman_grid)  GRID,
integer, intent(out)  IERR 
)

Create table of edges connected to each point.

WARNING: array EDGES will be overwritten if already exists

Parameters
edgesResulting list of edges
gridGrid for which this list is generated
[out]ierrError code

Definition at line 361 of file grid2.f.

References gridman_grid_allocate(), gridman_grid_check(), gridman_indlist_deallocate(), gridman::gridman_sp, and gridman::gridman_unit.

Referenced by gridman_grid2d_chains(), and gridman_grid2d_check().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine gridman_grid_eliminate_cells ( type(gridman_grid)  GRID_NEW,
type(gridman_grid)  GRID,
logical, dimension(grid%ncells), intent(in)  LTAKE,
integer, intent(out)  IERR 
)

Eliminate cells from GRIDMAN_GRID object.

WARNING: object GRID_NEW will be overwritten if already exists

Parameters
grid_newResulting grid with eliminated cells
gridOriginal grid
[in]ltakeList of cells which have to be included/eliminated

If LTAKE(ICELL)=.TRUE. then ICELL is taken into GRID_NEW, otherwise ICELL is eliminated

Parameters
[out]ierrError code

Definition at line 544 of file grid2.f.

References gridman_grid_allocate(), gridman_grid_check(), gridman_index_allocate(), gridman::gridman_sp, and gridman::gridman_unit.

Referenced by gridman_carre2grid().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine gridman_grid_eliminate_edges ( type(gridman_grid)  GRID_NEW,
type(gridman_grid)  GRID,
logical, dimension(grid%nedges), intent(in)  LTAKE,
integer, intent(out)  IERR 
)

Eliminate edges the GRIDMAN_GRID object.

WARNING: object GRID will be overwritten if already exists

Parameters
grid_newResulting grid with removed cells
gridOriginal grid
[in]ltakeList of edges which have to be included/eliminated, LTAKE(GRIDNEDGES)

If LTAKE(IEDGE)=.TRUE., then IEDGE is taken into GRID_NEW, otherwise IEDGE is eliminated

Parameters
[out]ierrError code

Definition at line 816 of file grid2.f.

References gridman_grid_allocate(), gridman_grid_check(), gridman_grid_deallocate(), gridman_index_allocate(), gridman_index_copy(), gridman_index_deallocate(), gridman::gridman_sp, and gridman::gridman_unit.

Referenced by gridman_grid_remove_free_edges().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine gridman_grid_remove_free_edges ( type(gridman_grid)  GRID_NEW,
type(gridman_grid)  GRID,
integer, intent(out)  IERR 
)

Remove edges which do not belong to any cell from the GRIDMAN_GRID object.

WARNING: object GRID will be overwritten if already exists

Parameters
grid_newResulting grid with removed cells
gridOriginal grid
[out]ierrError code

Definition at line 999 of file grid2.f.

References gridman::gridman_dbg, gridman_grid_eliminate_edges(), gridman::gridman_sp, and gridman::gridman_unit.

Referenced by gridman_carre2grid().

Here is the call graph for this function:

Here is the caller graph for this function: