MeshKit  1.0
CoreGen Class Reference

#include <CoreGen.hpp>

Inheritance diagram for CoreGen:

List of all members.

Public Types

enum  ErrorStates { INVALIDINPUT, ENEGATIVE }

Public Member Functions

 CoreGen (MKCore *mk, const MEntVector &me_vec)
virtual ~CoreGen ()
virtual const moab::EntityType * mesh_types_arr () const
 Return the mesh entity types operated on by this scheme.
virtual bool add_modelent (ModelEnt *model_ent)
 Re-implemented here so we can check topological dimension of model_ent.
virtual void setup_this ()
 Setup is a no-op, but must be provided since it's pure virtual.
virtual void execute_this ()
 The only setup/execute function we need, since meshing vertices is trivial.
int prepareIO (int argc, char *argv[], int nrank, int numprocs, std::string TestDir)
int parse_assembly_names (CParser parse, int argc, char *argv[])
int load_meshes ()
int load_meshes_more_procs (const int, int)
int load_meshes_parallel (const int, int)
int distribute_mesh (const int, int)
int load_geometries ()
int read_inputs_phase1 (int argc, char *argv[])
int read_inputs_phase2 (int argc, char *argv[])
int write_makefile ()
int write_minfofile ()
int find_assm (const int i, int &assm_index)
void banner ()
int copymove (const int nrank, const int numprocs)
int copymove_all (const int nrank, const int numprocs)
int set_copymove_coords ()
int save_mesh ()
int save_mesh (int rank)
int save_geometry ()
int shift_mn_ids (iBase_EntitySetHandle orig_set, int index)
int extrude ()
int move_verts (iBase_EntitySetHandle set, const double *dx)
int move_geoms (iBase_EntitySetHandle set, const double *dx)
int create_neumannset ()
int refine_coremodel ()
int load_and_compute_meshtogeom (iBase_EntitySetHandle set, std::string filenam)

Static Public Member Functions

static const char * name ()
 Get class name.
static bool can_mesh (iBase_EntityType dim)
 Function returning whether this scheme can mesh entities of t the specified dimension.
static bool can_mesh (ModelEnt *me)
 Function returning whether this scheme can mesh the specified entity.
static const moab::EntityType * output_types ()
 Get list of mesh entity types that can be generated.

Public Attributes

bool extrude_flag
bool umr_flag
bool compute_meshtogeom
std::vector< int > bsameas
std::vector< int > deg
bool mem_tflag
std::string prob_type
std::string savefiles
std::string info
std::string minfo
std::string same_as
std::string reloading_mf
std::vector< std::string > files
std::vector< std::string > all_meshfiles
std::vector< std::string > mk_files
std::vector< int > assm_meshfiles
std::vector< int > size_mf
std::vector< int > times_loaded
std::vector< int > rank_load
std::vector< double > load_per_assm
std::vector< std::vector< int > > assm_location
std::vector< std::vector< int > > position_core
std::vector< int > meshfile_proc
std::vector< double > x_coord
std::vector< double > y_coord
bool nst_flag
bool nsb_flag
bool nss_flag
bool nssall_flag
std::vector< std::string > core_alias
std::vector< double > nsx
std::vector< double > nsy
std::vector< double > nsc
int num_nsside
int ms_startid
int ns_startid
int nDegree

Private Member Functions

void IOErrorHandler (ErrorStates) const

Private Attributes

iGeomigeom
 iGeom Impl for calling geometry creation/manipulation operations
iMeshimesh
 iMesh Impl for calling mesh creation/manipulation operations
moab::Interface * mb
 MOAB Impl for calling mesh creation/manipulation operations.
std::vector< CopyMesh * > cm
std::vector< CopyGeom * > cg
ExtrudeMeshem
iBase_EntitySetHandle root_set
std::vector
< iBase_EntitySetHandle > 
assys
std::vector< int > assys_index
int rank
int procs
int err
int UNITCELL_DUCT
int ASSY_TYPES
int nrings
int nringsx
int nringsy
int pack_type
int symm
double pitch
double pitchx
double pitchy
bool global_ids
bool back_mesh
bool have_hex27
std::string outfile
std::string mesh_info
int nassys
int tot_assys
int set_DIM
double PII
double z_height
int z_divisions
int nst_Id
int nsb_Id
int nssall_Id
std::vector< int > nss_Id
std::string testdir
std::ifstream file_input
std::ofstream make_file
std::ofstream info_file
std::ofstream minfo_file
std::string iname
std::string ifile
std::string mfile
std::string geometry
std::string back_meshfile
std::string geom_engine
std::string nsLoc
std::string meshtogeomfile
std::string infofile
std::string minfofile
std::string logfilename
int linenumber
std::string card
std::string geom_type
std::string meshfile
std::string mf_alias
std::string temp_alias
std::string etype
std::vector< std::string > assm_alias
std::vector< int > all_ms_starts
std::vector< int > all_ns_starts
mstream logfile
mstream meshtogeom_file
std::string input_string
std::string comment
int MAXCHARS
double merge_tol
int do_merge
int update_sets
iBase_TagHandle merge_tag
CClock Timer
std::string szDateTime
int run_flag
clock_t sTime
double ctload
double ctcopymove
double ctmerge
double ctextrude
double ctns
double ctgid
double ctsave
clock_t tload
clock_t tcopymove
clock_t tmerge
clock_t textrude
clock_t tns
clock_t tgid
clock_t tsave
int ld_t
int ld_tload
int ld_tcopymove
int ld_tsave
int ld_tgid
int ld_tmerge
int ld_tns
unsigned long long mem1
unsigned long long mem2
unsigned long long mem3
unsigned long long mem4
unsigned long long mem5
unsigned long long mem6
unsigned long long mem7

Detailed Description

Examples:
example_coregen.cpp.

Definition at line 73 of file CoreGen.hpp.


Member Enumeration Documentation

Enumerator:
INVALIDINPUT 
ENEGATIVE 

Definition at line 125 of file CoreGen.hpp.


Constructor & Destructor Documentation

CoreGen ( MKCore mk,
const MEntVector me_vec 
)

Definition at line 18 of file CoreGen.cpp.

~CoreGen ( ) [virtual]

Definition at line 70 of file CoreGen.cpp.


Member Function Documentation

bool add_modelent ( ModelEnt model_ent) [virtual]

Re-implemented here so we can check topological dimension of model_ent.

Parameters:
model_entModelEnt being added

Reimplemented from MeshOp.

Definition at line 73 of file CoreGen.cpp.

void banner ( )

Definition at line 2725 of file CoreGen.cpp.

bool can_mesh ( iBase_EntityType  dim) [inline, static]

Function returning whether this scheme can mesh entities of t the specified dimension.

Parameters:
dimentity dimension

Definition at line 257 of file CoreGen.hpp.

bool can_mesh ( ModelEnt me) [inline, static]

Function returning whether this scheme can mesh the specified entity.

Used by MeshOpFactory to find scheme for an entity.

Parameters:
meModelEnt being queried
Returns:
If true, this scheme can mesh the specified ModelEnt

Definition at line 262 of file CoreGen.hpp.

int copymove ( const int  nrank,
const int  numprocs 
)

Definition at line 12 of file copymove_parallel.cpp.

int copymove_all ( const int  nrank,
const int  numprocs 
)

Definition at line 189 of file copymove_parallel.cpp.

Definition at line 1580 of file CoreGen.cpp.

int distribute_mesh ( const int  nrank,
int  numprocs 
)

Definition at line 744 of file CoreGen.cpp.

void execute_this ( ) [virtual]

The only setup/execute function we need, since meshing vertices is trivial.

Implements GraphNode.

Definition at line 246 of file CoreGen.cpp.

int extrude ( )

Definition at line 1409 of file CoreGen.cpp.

int find_assm ( const int  i,
int &  assm_index 
)

Definition at line 2594 of file CoreGen.cpp.

void IOErrorHandler ( ErrorStates  ECode) const [private]

Definition at line 1776 of file CoreGen.cpp.

int load_and_compute_meshtogeom ( iBase_EntitySetHandle  set,
std::string  filenam 
)

Definition at line 1098 of file CoreGen.cpp.

int load_geometries ( )

Definition at line 1207 of file CoreGen.cpp.

int load_meshes ( )

Definition at line 1048 of file CoreGen.cpp.

int load_meshes_more_procs ( const int  nrank,
int  numprocs 
)

Definition at line 892 of file CoreGen.cpp.

int load_meshes_parallel ( const int  nrank,
int  numprocs 
)

Definition at line 939 of file CoreGen.cpp.

const moab::EntityType * mesh_types_arr ( ) const [inline, virtual]

Return the mesh entity types operated on by this scheme.

Returns:
array terminated with moab::MBMAXTYPE

Implements MeshOp.

Definition at line 267 of file CoreGen.hpp.

int move_geoms ( iBase_EntitySetHandle  set,
const double *  dx 
)

Definition at line 1388 of file CoreGen.cpp.

int move_verts ( iBase_EntitySetHandle  set,
const double *  dx 
)

Definition at line 1353 of file CoreGen.cpp.

const char * name ( ) [inline, static]

Get class name.

Definition at line 252 of file CoreGen.hpp.

const moab::EntityType * output_types ( ) [static]

Get list of mesh entity types that can be generated.

Returns:
array terminated with moab::MBMAXTYPE

Definition at line 15 of file CoreGen.cpp.

int parse_assembly_names ( CParser  parse,
int  argc,
char *  argv[] 
)

Definition at line 2530 of file CoreGen.cpp.

int prepareIO ( int  argc,
char *  argv[],
int  nrank,
int  numprocs,
std::string  TestDir 
)
Examples:
example_coregen.cpp.

Definition at line 1879 of file CoreGen.cpp.

int read_inputs_phase1 ( int  argc,
char *  argv[] 
)

Definition at line 2096 of file CoreGen.cpp.

int read_inputs_phase2 ( int  argc,
char *  argv[] 
)

Definition at line 2242 of file CoreGen.cpp.

Definition at line 1544 of file CoreGen.cpp.

int save_geometry ( )

Definition at line 708 of file CoreGen.cpp.

int save_mesh ( )

Definition at line 684 of file CoreGen.cpp.

int save_mesh ( int  rank)

Definition at line 640 of file CoreGen.cpp.

Definition at line 30 of file copymove_parallel.cpp.

void setup_this ( ) [virtual]

Setup is a no-op, but must be provided since it's pure virtual.

Implements GraphNode.

Definition at line 78 of file CoreGen.cpp.

int shift_mn_ids ( iBase_EntitySetHandle  orig_set,
int  index 
)

Definition at line 1279 of file CoreGen.cpp.

int write_makefile ( )

Definition at line 2613 of file CoreGen.cpp.

int write_minfofile ( )

Definition at line 1796 of file CoreGen.cpp.


Member Data Documentation

std::vector<std::string> all_meshfiles

Definition at line 161 of file CoreGen.hpp.

std::vector<int> all_ms_starts [private]

Definition at line 216 of file CoreGen.hpp.

std::vector<int> all_ns_starts [private]

Definition at line 216 of file CoreGen.hpp.

std::vector<std::string> assm_alias [private]

Definition at line 215 of file CoreGen.hpp.

std::vector< std::vector<int> > assm_location

Definition at line 165 of file CoreGen.hpp.

std::vector<int> assm_meshfiles

Definition at line 162 of file CoreGen.hpp.

int ASSY_TYPES [private]

Definition at line 194 of file CoreGen.hpp.

std::vector<iBase_EntitySetHandle> assys [private]

Definition at line 190 of file CoreGen.hpp.

std::vector<int> assys_index [private]

Definition at line 191 of file CoreGen.hpp.

bool back_mesh [private]

Definition at line 197 of file CoreGen.hpp.

std::string back_meshfile [private]

Definition at line 212 of file CoreGen.hpp.

std::vector<int> bsameas

Definition at line 158 of file CoreGen.hpp.

std::string card [private]

Definition at line 214 of file CoreGen.hpp.

std::vector<CopyGeom*> cg [private]

Definition at line 186 of file CoreGen.hpp.

std::vector<CopyMesh*> cm [private]

Definition at line 185 of file CoreGen.hpp.

std::string comment [private]

Definition at line 222 of file CoreGen.hpp.

Definition at line 157 of file CoreGen.hpp.

std::vector<std::string> core_alias

Definition at line 171 of file CoreGen.hpp.

double ctcopymove [private]

Definition at line 244 of file CoreGen.hpp.

double ctextrude [private]

Definition at line 244 of file CoreGen.hpp.

double ctgid [private]

Definition at line 244 of file CoreGen.hpp.

double ctload [private]

Definition at line 244 of file CoreGen.hpp.

double ctmerge [private]

Definition at line 244 of file CoreGen.hpp.

double ctns [private]

Definition at line 244 of file CoreGen.hpp.

double ctsave [private]

Definition at line 244 of file CoreGen.hpp.

std::vector<int> deg

Definition at line 158 of file CoreGen.hpp.

int do_merge [private]

Definition at line 227 of file CoreGen.hpp.

ExtrudeMesh* em [private]

Definition at line 187 of file CoreGen.hpp.

int err [private]

Definition at line 193 of file CoreGen.hpp.

std::string etype [private]

Definition at line 214 of file CoreGen.hpp.

Definition at line 156 of file CoreGen.hpp.

std::ifstream file_input [private]

Definition at line 210 of file CoreGen.hpp.

std::vector<std::string> files

Definition at line 161 of file CoreGen.hpp.

std::string geom_engine [private]

Definition at line 212 of file CoreGen.hpp.

std::string geom_type [private]

Definition at line 214 of file CoreGen.hpp.

std::string geometry [private]

Definition at line 212 of file CoreGen.hpp.

bool global_ids [private]

Definition at line 197 of file CoreGen.hpp.

bool have_hex27 [private]

Definition at line 197 of file CoreGen.hpp.

std::string ifile [private]

Definition at line 212 of file CoreGen.hpp.

iGeom* igeom [private]

iGeom Impl for calling geometry creation/manipulation operations

Definition at line 177 of file CoreGen.hpp.

iMesh* imesh [private]

iMesh Impl for calling mesh creation/manipulation operations

Definition at line 180 of file CoreGen.hpp.

std::string iname [private]

Definition at line 212 of file CoreGen.hpp.

std::string info

Definition at line 160 of file CoreGen.hpp.

std::ofstream info_file [private]

Definition at line 211 of file CoreGen.hpp.

std::string infofile [private]

Definition at line 212 of file CoreGen.hpp.

std::string input_string [private]

Definition at line 221 of file CoreGen.hpp.

int ld_t [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tcopymove [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tgid [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tload [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tmerge [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tns [private]

Definition at line 248 of file CoreGen.hpp.

int ld_tsave [private]

Definition at line 248 of file CoreGen.hpp.

int linenumber [private]

Definition at line 213 of file CoreGen.hpp.

std::vector<double> load_per_assm

Definition at line 164 of file CoreGen.hpp.

mstream logfile [private]

Definition at line 218 of file CoreGen.hpp.

std::string logfilename [private]

Definition at line 212 of file CoreGen.hpp.

std::ofstream make_file [private]

Definition at line 211 of file CoreGen.hpp.

int MAXCHARS [private]

Definition at line 223 of file CoreGen.hpp.

moab::Interface* mb [private]

MOAB Impl for calling mesh creation/manipulation operations.

Definition at line 183 of file CoreGen.hpp.

unsigned long long mem1 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem2 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem3 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem4 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem5 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem6 [private]

Definition at line 249 of file CoreGen.hpp.

unsigned long long mem7 [private]

Definition at line 249 of file CoreGen.hpp.

bool mem_tflag

Definition at line 159 of file CoreGen.hpp.

iBase_TagHandle merge_tag [private]

Definition at line 229 of file CoreGen.hpp.

double merge_tol [private]

Definition at line 226 of file CoreGen.hpp.

std::string mesh_info [private]

Definition at line 198 of file CoreGen.hpp.

std::string meshfile [private]

Definition at line 214 of file CoreGen.hpp.

std::vector<int> meshfile_proc

Definition at line 167 of file CoreGen.hpp.

Definition at line 218 of file CoreGen.hpp.

std::string meshtogeomfile [private]

Definition at line 212 of file CoreGen.hpp.

std::string mf_alias [private]

Definition at line 214 of file CoreGen.hpp.

std::string mfile [private]

Definition at line 212 of file CoreGen.hpp.

std::string minfo

Definition at line 160 of file CoreGen.hpp.

std::ofstream minfo_file [private]

Definition at line 211 of file CoreGen.hpp.

std::string minfofile [private]

Definition at line 212 of file CoreGen.hpp.

std::vector<std::string> mk_files

Definition at line 161 of file CoreGen.hpp.

Definition at line 173 of file CoreGen.hpp.

int nassys [private]

Definition at line 199 of file CoreGen.hpp.

int nDegree

Definition at line 173 of file CoreGen.hpp.

int nrings [private]

Definition at line 195 of file CoreGen.hpp.

int nringsx [private]

Definition at line 195 of file CoreGen.hpp.

int nringsy [private]

Definition at line 195 of file CoreGen.hpp.

Definition at line 173 of file CoreGen.hpp.

bool nsb_flag

Definition at line 170 of file CoreGen.hpp.

int nsb_Id [private]

Definition at line 205 of file CoreGen.hpp.

std::vector<double> nsc

Definition at line 172 of file CoreGen.hpp.

std::string nsLoc [private]

Definition at line 212 of file CoreGen.hpp.

bool nss_flag

Definition at line 170 of file CoreGen.hpp.

std::vector<int> nss_Id [private]

Definition at line 206 of file CoreGen.hpp.

Definition at line 170 of file CoreGen.hpp.

int nssall_Id [private]

Definition at line 205 of file CoreGen.hpp.

bool nst_flag

Definition at line 170 of file CoreGen.hpp.

int nst_Id [private]

Definition at line 205 of file CoreGen.hpp.

std::vector<double> nsx

Definition at line 172 of file CoreGen.hpp.

std::vector<double> nsy

Definition at line 172 of file CoreGen.hpp.

Definition at line 173 of file CoreGen.hpp.

std::string outfile [private]

Definition at line 198 of file CoreGen.hpp.

int pack_type [private]

Definition at line 195 of file CoreGen.hpp.

double PII [private]

Definition at line 202 of file CoreGen.hpp.

double pitch [private]

Definition at line 196 of file CoreGen.hpp.

double pitchx [private]

Definition at line 196 of file CoreGen.hpp.

double pitchy [private]

Definition at line 196 of file CoreGen.hpp.

std::vector<std::vector<int> > position_core

Definition at line 166 of file CoreGen.hpp.

std::string prob_type

Definition at line 160 of file CoreGen.hpp.

int procs [private]

Definition at line 193 of file CoreGen.hpp.

int rank [private]

Definition at line 193 of file CoreGen.hpp.

std::vector<int> rank_load

Definition at line 163 of file CoreGen.hpp.

std::string reloading_mf

Definition at line 160 of file CoreGen.hpp.

iBase_EntitySetHandle root_set [private]

Definition at line 189 of file CoreGen.hpp.

int run_flag [private]

Definition at line 237 of file CoreGen.hpp.

std::string same_as

Definition at line 160 of file CoreGen.hpp.

std::string savefiles

Definition at line 160 of file CoreGen.hpp.

int set_DIM [private]

Definition at line 201 of file CoreGen.hpp.

std::vector<int> size_mf

Definition at line 162 of file CoreGen.hpp.

clock_t sTime [private]

Definition at line 238 of file CoreGen.hpp.

int symm [private]

Definition at line 195 of file CoreGen.hpp.

std::string szDateTime [private]

Definition at line 236 of file CoreGen.hpp.

clock_t tcopymove [private]

Definition at line 245 of file CoreGen.hpp.

std::string temp_alias [private]

Definition at line 214 of file CoreGen.hpp.

std::string testdir [private]

Definition at line 207 of file CoreGen.hpp.

clock_t textrude [private]

Definition at line 245 of file CoreGen.hpp.

clock_t tgid [private]

Definition at line 245 of file CoreGen.hpp.

CClock Timer [private]

Definition at line 235 of file CoreGen.hpp.

std::vector<int> times_loaded

Definition at line 162 of file CoreGen.hpp.

clock_t tload [private]

Definition at line 245 of file CoreGen.hpp.

clock_t tmerge [private]

Definition at line 245 of file CoreGen.hpp.

clock_t tns [private]

Definition at line 245 of file CoreGen.hpp.

int tot_assys [private]

Definition at line 200 of file CoreGen.hpp.

clock_t tsave [private]

Definition at line 245 of file CoreGen.hpp.

bool umr_flag

Definition at line 156 of file CoreGen.hpp.

int UNITCELL_DUCT [private]

Definition at line 194 of file CoreGen.hpp.

int update_sets [private]

Definition at line 228 of file CoreGen.hpp.

std::vector<double> x_coord

Definition at line 168 of file CoreGen.hpp.

std::vector<double> y_coord

Definition at line 169 of file CoreGen.hpp.

int z_divisions [private]

Definition at line 204 of file CoreGen.hpp.

double z_height [private]

Definition at line 203 of file CoreGen.hpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines