Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
Go to the source code of this file.
Functions | |
int | main (int argc, char *argv[]) |
int main | ( | int | argc, |
char * | argv[] | ||
) |
Definition at line 8 of file UniformRefinement.cpp.
References moab::error(), ErrorCode, moab::NestedRefine::generate_mesh_hierarchy(), moab::Interface::load_file(), mb, MB_CHK_ERR, and moab::Interface::write_file().
{ Core mb; Interface* mbImpl = &mb; ErrorCode error; if( argc == 1 ) { std::cerr << "Usage: " << argv[0] << " [filename]" << std::endl; return 1; } const char* filename = argv[1]; error = mbImpl->load_file( filename );MB_CHK_ERR( error ); NestedRefine uref( &mb ); // Usage: The level degrees array controls number of refinemetns and // the degree of refinement at each level. // Example: int level_degrees[4] = {2,3,2,3}; std::vector< int > level_degrees; if( argc > 2 ) { level_degrees.resize( argc - 2 ); for( int i = 2; i < argc; ++i ) level_degrees[i - 2] = atoi( argv[i] ); } else { level_degrees.resize( 2 ); } int num_levels = static_cast< int >( level_degrees.size() ); std::cout << "Starting hierarchy generation" << std::endl; std::vector< EntityHandle > set; error = uref.generate_mesh_hierarchy( num_levels, level_degrees.data(), set );MB_CHK_ERR( error ); std::cout << "Finished hierarchy generation" << std::endl; std::stringstream file; file << "mesh_hierarchy.h5m"; error = mbImpl->write_file( file.str().c_str() );MB_CHK_ERR( error ); return 0; }