INMOST
Mathematical Modelling Toolkit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Macros | Enumerations | Functions
inmost_common.h File Reference
#include "inmost_options.h"
#include <string>
#include <vector>
#include <set>
#include <map>
#include <list>
#include <algorithm>
#include <cmath>
#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <stdio.h>
#include <limits.h>
#include "container.hpp"
Include dependency graph for inmost_common.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 INMOST
 

Macros

#define USE_MESH
 
#define USE_PARTITIONER
 
#define USE_SOLVER
 
#define USE_NONLINEAR
 
#define USE_AUTODIFF
 
#define USE_PARALLEL_STORAGE
 
#define PACK_ARRAY
 
#define __INLINE   inline
 
#define INMOST_MPI_Request   int
 
#define INMOST_MPI_Type   int
 
#define INMOST_MPI_Comm   int
 
#define INMOST_MPI_COMM_WORLD   0
 
#define INMOST_MPI_BYTE   0
 
#define INMOST_MPI_INT   0
 
#define INMOST_MPI_DOUBLE   0
 
#define INMOST_MPI_UNSIGNED   0
 
#define INMOST_MPI_Win   int
 
#define INMOST_MPI_DATATYPE_NULL   0
 
#define INMOST_MPI_SIZE   int
 
#define INMOST_DATA_INTEGER_TYPE   int
 
#define INMOST_DATA_REAL_TYPE   double
 
#define INMOST_DATA_BULK_TYPE   unsigned char
 
#define INMOST_MPI_DATA_INTEGER_TYPE   INMOST_MPI_INT
 
#define INMOST_MPI_DATA_REAL_TYPE   INMOST_MPI_DOUBLE
 
#define INMOST_MPI_DATA_BULK_TYPE   INMOST_MPI_BYTE
 
#define INMOST_DATA_ENUM_TYPE   unsigned int
 
#define ENUMUNDEF   UINT_MAX
 
#define INMOST_DATA_BIG_ENUM_TYPE   unsigned int
 
#define BIGENUMUNDEF   UINT_MAX
 
#define INMOST_MPI_DATA_ENUM_TYPE   INMOST_MPI_UNSIGNED
 
#define INMOST_MPI_DATA_BIG_ENUM_TYPE   INMOST_MPI_UNSIGNED
 

Enumerations

enum  INMOST::ErrorType {
  INMOST::Failure =100, INMOST::NoTagPosition, INMOST::WrongDataType, INMOST::WrongElementType,
  INMOST::BadTag, INMOST::BadBulkType, INMOST::NoData, INMOST::TagNotInitialized,
  INMOST::TagNotFound, INMOST::TagExists, INMOST::TagForOtherMesh, INMOST::ElementForOtherMesh,
  INMOST::ImpossibleConn, INMOST::NoElementType, INMOST::NoMultiElement, INMOST::NoMeshElement,
  INMOST::NoEsetElement, INMOST::DimensionIsFixed, INMOST::NullInElementSet, INMOST::NoSpaceForMarker,
  INMOST::ElementBelongsToNobody, INMOST::BadFileName, INMOST::BadFile, INMOST::CorruptedIerarchy,
  INMOST::CorruptedOrdering, INMOST::IterForOtherMesh, INMOST::UndefinedBehaviorInGeometry, INMOST::DimensionIsNotSupportedByGeometry,
  INMOST::NoParallelMode, INMOST::BadParameter, INMOST::TopologyCheckError, INMOST::ErrorInSolver = 400,
  INMOST::DataCorruptedInSolver, INMOST::DifferentCommunicatorInSolver, INMOST::MatrixNotSetInSolver, INMOST::InconsistentSizesInSolver,
  INMOST::IndexesAreDifferentInSolver, INMOST::PrepareMatrixFirst, INMOST::CannotReusePreconditionerOfDifferentSize, INMOST::ErrorInPartitioner = 500,
  INMOST::UnknownWeightSize, INMOST::DistributionTagWasNotFilled, INMOST::NotImplemented = 1000, INMOST::Impossible
}
 

Functions

double Timer ()
 

Macro Definition Documentation

#define __INLINE   inline

Definition at line 75 of file inmost_common.h.

#define BIGENUMUNDEF   UINT_MAX

Definition at line 146 of file inmost_common.h.

#define ENUMUNDEF   UINT_MAX

Definition at line 144 of file inmost_common.h.

#define INMOST_DATA_BIG_ENUM_TYPE   unsigned int

Definition at line 145 of file inmost_common.h.

#define INMOST_DATA_BULK_TYPE   unsigned char

Definition at line 135 of file inmost_common.h.

#define INMOST_DATA_ENUM_TYPE   unsigned int

Definition at line 143 of file inmost_common.h.

#define INMOST_DATA_INTEGER_TYPE   int

Definition at line 133 of file inmost_common.h.

#define INMOST_DATA_REAL_TYPE   double

Definition at line 134 of file inmost_common.h.

#define INMOST_MPI_BYTE   0

Definition at line 111 of file inmost_common.h.

#define INMOST_MPI_Comm   int

Definition at line 109 of file inmost_common.h.

#define INMOST_MPI_COMM_WORLD   0

Definition at line 110 of file inmost_common.h.

#define INMOST_MPI_DATA_BIG_ENUM_TYPE   INMOST_MPI_UNSIGNED

Definition at line 149 of file inmost_common.h.

#define INMOST_MPI_DATA_BULK_TYPE   INMOST_MPI_BYTE

Definition at line 139 of file inmost_common.h.

#define INMOST_MPI_DATA_ENUM_TYPE   INMOST_MPI_UNSIGNED

Definition at line 148 of file inmost_common.h.

#define INMOST_MPI_DATA_INTEGER_TYPE   INMOST_MPI_INT

Definition at line 137 of file inmost_common.h.

#define INMOST_MPI_DATA_REAL_TYPE   INMOST_MPI_DOUBLE

Definition at line 138 of file inmost_common.h.

#define INMOST_MPI_DATATYPE_NULL   0

Definition at line 116 of file inmost_common.h.

#define INMOST_MPI_DOUBLE   0

Definition at line 113 of file inmost_common.h.

#define INMOST_MPI_INT   0

Definition at line 112 of file inmost_common.h.

#define INMOST_MPI_Request   int

Definition at line 107 of file inmost_common.h.

#define INMOST_MPI_SIZE   int

Definition at line 131 of file inmost_common.h.

#define INMOST_MPI_Type   int

Definition at line 108 of file inmost_common.h.

#define INMOST_MPI_UNSIGNED   0

Definition at line 114 of file inmost_common.h.

#define INMOST_MPI_Win   int

Definition at line 115 of file inmost_common.h.

#define PACK_ARRAY

Definition at line 73 of file inmost_common.h.

#define USE_AUTODIFF

Definition at line 29 of file inmost_common.h.

#define USE_MESH

Definition at line 11 of file inmost_common.h.

#define USE_NONLINEAR

Definition at line 24 of file inmost_common.h.

#define USE_PARALLEL_STORAGE

Definition at line 49 of file inmost_common.h.

#define USE_PARTITIONER

Definition at line 13 of file inmost_common.h.

#define USE_SOLVER

Definition at line 17 of file inmost_common.h.

Function Documentation

double Timer ( )

Cross-platform timer that return current time in seconds. The timer is similar to MPI_Wtime() and omp_get_wtime() but is independent on both flags USE_MPI and USE_OMP.

double seconds = Timer(); ...some code... seconds = Timer() - seconds; std::cout << "Time spent is " << seconds << " seconds." << std::endl;