本文整理汇总了C++中CConfig::GetKind_Solver方法的典型用法代码示例。如果您正苦于以下问题:C++ CConfig::GetKind_Solver方法的具体用法?C++ CConfig::GetKind_Solver怎么用?C++ CConfig::GetKind_Solver使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CConfig
的用法示例。
在下文中一共展示了CConfig::GetKind_Solver方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char *argv[]) {
unsigned short iZone, nZone = SINGLE_ZONE, iInst;
su2double StartTime = 0.0, StopTime = 0.0, UsedTime = 0.0;
ofstream ConvHist_file;
char config_file_name[MAX_STRING_SIZE];
int rank = MASTER_NODE;
int size = SINGLE_NODE;
bool fem_solver = false;
bool periodic = false;
bool multizone = false;
/*--- MPI initialization ---*/
#ifdef HAVE_MPI
SU2_MPI::Init(&argc,&argv);
SU2_MPI::Comm MPICommunicator(MPI_COMM_WORLD);
#else
SU2_Comm MPICommunicator(0);
#endif
rank = SU2_MPI::GetRank();
size = SU2_MPI::GetSize();
/*--- Pointer to different structures that will be used throughout the entire code ---*/
COutput *output = NULL;
CGeometry ***geometry_container = NULL;
CSolver ***solver_container = NULL;
CConfig **config_container = NULL;
CConfig *driver_config = NULL;
unsigned short *nInst = NULL;
/*--- Load in the number of zones and spatial dimensions in the mesh file (if no config
file is specified, default.cfg is used) ---*/
if (argc == 2 || argc == 3) { strcpy(config_file_name,argv[1]); }
else { strcpy(config_file_name, "default.cfg"); }
CConfig *config = NULL;
config = new CConfig(config_file_name, SU2_SOL);
if (config->GetKind_Solver() == MULTIZONE) nZone = config->GetnConfigFiles();
else nZone = CConfig::GetnZone(config->GetMesh_FileName(), config->GetMesh_FileFormat(), config);
periodic = CConfig::GetPeriodic(config->GetMesh_FileName(), config->GetMesh_FileFormat(), config);
/*--- Definition of the containers per zones ---*/
solver_container = new CSolver**[nZone];
config_container = new CConfig*[nZone];
geometry_container = new CGeometry**[nZone];
nInst = new unsigned short[nZone];
driver_config = NULL;
for (iZone = 0; iZone < nZone; iZone++) {
solver_container[iZone] = NULL;
config_container[iZone] = NULL;
geometry_container[iZone] = NULL;
nInst[iZone] = 1;
}
/*--- Initialize the configuration of the driver ---*/
driver_config = new CConfig(config_file_name, SU2_SOL, ZONE_0, nZone, 0, VERB_NONE);
/*--- Initialize a char to store the zone filename ---*/
char zone_file_name[MAX_STRING_SIZE];
/*--- Store a boolean for multizone problems ---*/
multizone = (driver_config->GetKind_Solver() == MULTIZONE);
/*--- Loop over all zones to initialize the various classes. In most
cases, nZone is equal to one. This represents the solution of a partial
differential equation on a single block, unstructured mesh. ---*/
for (iZone = 0; iZone < nZone; iZone++) {
/*--- Definition of the configuration option class for all zones. In this
constructor, the input configuration file is parsed and all options are
read and stored. ---*/
if (multizone){
strcpy(zone_file_name, driver_config->GetConfigFilename(iZone).c_str());
config_container[iZone] = new CConfig(zone_file_name, SU2_SOL, iZone, nZone, 0, VERB_HIGH);
}
else{
config_container[iZone] = new CConfig(config_file_name, SU2_SOL, iZone, nZone, 0, VERB_HIGH);
}
config_container[iZone]->SetMPICommunicator(MPICommunicator);
}
/*--- Set the multizone part of the problem. ---*/
if (driver_config->GetKind_Solver() == MULTIZONE){
for (iZone = 0; iZone < nZone; iZone++) {
/*--- Set the interface markers for multizone ---*/
config_container[iZone]->SetMultizone(driver_config, config_container);
}
}
/*--- Read the geometry for each zone ---*/
//.........这里部分代码省略.........