myHypothesis->SetNivMax(-1);
myHypothesis->SetDiamMin(-1.0);
myHypothesis->SetAdapInit(0);
- myHypothesis->SetLevelOutput(0);
+ myHypothesis->SetExtraOutput(1);
return HOMARD::HOMARD_Hypothesis::_duplicate(myHypothesis);
}
//=============================================================================
HOMARD::HOMARD_Boundary_ptr HOMARD_Gen_i::CreateBoundaryDi(const char* BoundaryName, const char* MeshName, const char* MeshFile)
{
- INFOS ("CreateBoundaryDi : BoundaryName = " << BoundaryName << "MeshName = " << MeshName );
+ INFOS ("CreateBoundaryDi : BoundaryName = " << BoundaryName << ", MeshName = " << MeshName );
HOMARD::HOMARD_Boundary_var myBoundary = CreateBoundary(BoundaryName, 0);
myBoundary->SetMeshFile( MeshFile ) ;
myBoundary->SetMeshName( MeshName ) ;
MESSAGE ( ". DiamMin = " << DiamMin );
int AdapInit = myHypo->GetAdapInit();
MESSAGE ( ". AdapInit = " << AdapInit );
- int LevelOutput = myHypo->GetLevelOutput();
- MESSAGE ( ". LevelOutput = " << LevelOutput );
- myDriver->TexteAdvanced(Pyram, NivMax, DiamMin, AdapInit, LevelOutput);
+ int ExtraOutput = myHypo->GetExtraOutput();
+ MESSAGE ( ". ExtraOutput = " << ExtraOutput );
+ myDriver->TexteAdvanced(Pyram, NivMax, DiamMin, AdapInit, ExtraOutput);
// E.7. Ajout des informations sur le deroulement de l'execution
int MessInfo = myIteration->GetInfoCompute();
std::string BoundaryName = std::string((*ListBoundaryGroupType)[NumBoundary]);
MESSAGE ( "... BoundaryName = " << BoundaryName);
// 2.1. La frontiere a-t-elle deja ete ecrite ?
- // Cela arrive quand elle estliéé a plusieurs groupes. Il ne faut l'ecrire que la premiere fois
+ // Cela arrive quand elle est liee a plusieurs groupes. Il ne faut l'ecrire que la premiere fois
int A_faire = 1 ;
std::list<std::string>::const_iterator it = ListeBoundaryTraitees.begin();
while (it != ListeBoundaryTraitees.end())
if (BoundaryType == 0)
{
const char* MeshName = myBoundary->GetMeshName() ;
+ MESSAGE ( ". MeshName = " << MeshName );
const char* MeshFile = myBoundary->GetMeshFile() ;
+ MESSAGE ( ". MeshFile = " << MeshFile );
myDriver->TexteBoundaryDi( MeshName, MeshFile);
if ( BoundaryOption % 2 != 0 ) { BoundaryOption = BoundaryOption*2 ; }
}
// G.1.8. Execution de HOMARD : les options de l'iteration
else if ( mot_cle == "HOMARD_Exec_Iter_Options" )
{ myDriver->Texte_python_2( pythonIter, "TimeStep", "Iter" ) ; }
- // G.1.9. Zones et frontieres : les creations
+ // G.1.9. a. Creation eventuelles des zones et frontieres
+ // b. Enchainement
else if ( mot_cle == "Iter_1" )
{
- std::string texte_control = myDriver->Texte_Iter_1_control() ;
+ std::string texte_control = "" ;
if ( TypeAdap == 0 ) { texte_control += YACSDriverTexteZone( myHypo, myDriver ) ; }
texte_control += YACSDriverTexteBoundary( myCase, myDriver ) ;
+ texte_control += myDriver->Texte_Iter_1_control() ;
myDriver->TexteAdd(texte_control);
}
// G.1.10. Les tests de convergence
// 4. Mise en place des instructions
int BoundaryType = myBoundary->GetType();
MESSAGE ( "... BoundaryType = " << BoundaryType);
+ const char* MeshName ;
+ const char* MeshFile ;
+ if (BoundaryType == 0)
+ {
+ MeshName = myBoundary->GetMeshName() ;
+ MESSAGE ( ". MeshName = " << MeshName );
+ MeshFile = myBoundary->GetMeshFile() ;
+ MESSAGE ( ". MeshFile = " << MeshFile );
+ }
std::string texte_control_0 ;
- texte_control_0 = myDriver->Texte_Iter_1_Boundary(BoundaryType, pythonStructure, methode, BoundaryName );
+ texte_control_0 = myDriver->Texte_Iter_1_Boundary(BoundaryType, pythonStructure, methode, BoundaryName, MeshName, MeshFile );
texte_control += texte_control_0 ;
// 5. Memorisation du traitement
ListeBoundaryTraitees.push_back( BoundaryName );