Diffpack Documentation

(Functionality not available, requires installation of an additional Diffpack Toolbox)


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

GridPart_prm Class Reference

parameter class for the "GridPart" hierarchy. More...

#include <GridPart_prm.h>

Inheritance diagram for GridPart_prm::

HandleId List of all members.

Public Methods

 GridPart_prm ()
virtual ~GridPart_prm ()
void define (MenuSystem &menu, int level=MAIN)
void scan (MenuSystem &menu)
bool ok ()
GridPartcreate () const
void debugPrint (Os os)

Static Public Methods

void defineStatic (MenuSystem &menu, int level=MAIN)

Public Attributes

Handle(MenuSysteminput_menu
int proc_id
int num_procs
int num_local_subds
int num_global_subds
VecSimplest(VecSimple(int)) subd_list
GridSourceType grid_source_type
String subgrid_root_filename
String global_grid_text
String global_grid_bind_redef_text
PartAlgorithm partition_algorithm
bool build_graph_from_grid
int num_overlaps
String up_div_text
String up_part_text
String up_overlap_text
bool up_triangular
bool use_blocking_send
bool use_blocking_recv
bool order_recv_sequence

Detailed Description

parameter class for the "GridPart" hierarchy.

NAME: GridPart_prm - parameter class for the "GridPart" hierarchy

DESCRIPTION:

This class contains diverse parameters that are useful for preparing subgrids when the "GridPart makeSubgrids" member funtion is invoked (normally by "GridPartAdm"). These parameters can be given by correct use of the "define" and "scan" functions. Here are some details of the "MenuSystem" items:

"subdomain list" - can be used to indicate whether more than one subgrid should be prepared for any processor. If "DEFAULT" is given as answer, it means that every processor has one subgrid. (The total number of processors is decided by the input value to the option "-np" associated with the "mpirun" command.) However, if the following

      string  procs=3 [1,1][2,2,3][1,4] is given, then the user is
processors, where processor number 2 will have two subgrids (No.2 and No.3).

"grid source type" - determines which subclass of "GridPart" is to be used. "FileSource" refers to class "GridPartFileSource", "GlobalGrid" refers to class "GridPartUnstruct", while "UniformPartition" refers to class "GridPartUniform".

"subgrid root name" - is only relevant for class "GridPartFileSource". An legal answer is e.g.

             subd%03d.grid
"global grid" - is only relevant for class "GridPartUnstruct". The answer should be of the format such that Diffpack function "readOrMakeGrid" can recognize it.

"global-grid-bind-redef" - is only relevant for class "GridPartUnstruct". It can be used to modify boundary indicators of the global unstructured grid before partition, with "NONE" meaning no modification is desired.

"partition-algorithm" - decides which non-overlapping grid partitioner (subclass of "GridPartUnstruct") should be used. At the moment, the only legal answer is "METIS". This input is only relevant for class "GridPartUnstruct".

"number overlaps" - indicates whether overlap between neighboring subgrids is desired, where 0 means no overlap and larger value means larger overlap. This input is only relevant for class "GridPartUnstruct".

"subdomain division" - is only relevant for class "GridPartUniform". It determines how the global rectangular domain should be partitioned. A legal answer is e.g.

               d=2 [-1,1]x[-1,1] in:[0:2]x[0:2]
"sub partition" - is only relevant for class "GridPartUniform". It determines how many small cells each subdomain should be divided into. A legel anser can e.g. be
               [100,100]
"overlap" - is only relevant for class "GridPartUniform". It indicates whether overlap between neighboring subgrids should be introduced, and if so how much overlap there should be. A legal answer can e.g. be
               [1,1]
"use triangle elements" - is only relevant for class "GridPartUniform". It indicates whether each small cell of the subgrids should be divided into triangles or tetrahedra.


Constructor & Destructor Documentation

GridPart_prm::GridPart_prm ( )
 

There is only one constructor that takes no arguments. The constructor initializes all variables with default values.

GridPart_prm::~GridPart_prm ( ) [inline, virtual]
 


Member Function Documentation

GridPart * GridPart_prm::create ( ) const
 

void GridPart_prm::debugPrint ( Os os )
 

void GridPart_prm::define ( MenuSystem & menu,
int level = MAIN ) [inline]
 

void GridPart_prm::defineStatic ( MenuSystem & menu,
int level = MAIN ) [static]
 

bool GridPart_prm::ok ( )
 

void GridPart_prm::scan ( MenuSystem & menu )
 


Member Data Documentation

bool GridPart_prm::build_graph_from_grid
 

String GridPart_prm::global_grid_bind_redef_text
 

String GridPart_prm::global_grid_text
 

GridSourceType GridPart_prm::grid_source_type
 

Handle(MenuSystem) GridPart_prm::input_menu
 

int GridPart_prm::num_global_subds
 

int GridPart_prm::num_local_subds
 

int GridPart_prm::num_overlaps
 

int GridPart_prm::num_procs
 

bool GridPart_prm::order_recv_sequence
 

PartAlgorithm GridPart_prm::partition_algorithm
 

int GridPart_prm::proc_id
 

VecSimplest(VecSimple(int)) GridPart_prm::subd_list
 

String GridPart_prm::subgrid_root_filename
 

String GridPart_prm::up_div_text
 

String GridPart_prm::up_overlap_text
 

String GridPart_prm::up_part_text
 

bool GridPart_prm::up_triangular
 

bool GridPart_prm::use_blocking_recv
 

bool GridPart_prm::use_blocking_send
 


The documentation for this class was generated from the following file:
Copyright © 2003 inuTech GmbH. All rights reserved.