escript  Revision_
IndexList.h
Go to the documentation of this file.
00001 
00002 /*****************************************************************************
00003 *
00004 * Copyright (c) 2003-2014 by University of Queensland
00005 * http://www.uq.edu.au
00006 *
00007 * Primary Business: Queensland, Australia
00008 * Licensed under the Open Software License version 3.0
00009 * http://www.opensource.org/licenses/osl-3.0.php
00010 *
00011 * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
00012 * Development 2012-2013 by School of Earth Sciences
00013 * Development from 2014 by Centre for Geoscience Computing (GeoComp)
00014 *
00015 *****************************************************************************/
00016 
00017 /************************************************************************************/
00018 
00019 /* Dudley: Converting an element list into a matrix shape     */
00020 
00021 /************************************************************************************/
00022 
00023 #ifndef INC_DUDLEY_INDEXLIST
00024 #define INC_DUDLEY_INDEXLIST
00025 
00026 #include "Dudley.h"
00027 #include "ElementFile.h"
00028 #include "Mesh.h"
00029 
00030 #include "esysUtils/IndexList.h"
00031 
00032 using esysUtils::IndexListArray;
00033 
00034 /* structure to build system matrix */
00035 
00036 void Dudley_IndexList_insertElements(IndexListArray& index_list,
00037                      Dudley_ElementFile * elements,
00038                      bool reduce_row_order, index_t * row_map,
00039                      bool reduce_col_order, index_t * col_map);
00040 void Dudley_IndexList_insertElementsWithRowRange(IndexListArray& index_list,
00041                      index_t firstRow, index_t lastRow,
00042                      Dudley_ElementFile* elements, index_t* row_map,
00043                      index_t* col_map);
00044 void Dudley_IndexList_insertElementsWithRowRangeNoMainDiagonal(
00045                      IndexListArray& index_list, index_t firstRow,
00046                      index_t lastRow, Dudley_ElementFile* elements,
00047                      index_t* row_map, index_t* col_map);
00048 
00049 #endif /* #ifndef INC_DUDLEY_INDEXLIST */
00050