commit:2015:11_18
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
commit:2015:11_18 [2015/11/18 18:43] – wautelet | commit:2015:11_18 [2016/03/30 15:23] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 13: | Line 13: | ||
===== Time Step Computation Method ===== | ===== Time Step Computation Method ===== | ||
+ | |||
+ | Lors de mon refactoring, | ||
==== Pas de temps constant ==== | ==== Pas de temps constant ==== | ||
Line 23: | Line 25: | ||
</ | </ | ||
- | Si les itérations | + | **Remarques importantes :** |
+ | * Si les itérations | ||
+ | * Cette méthode peut être utilisée avec tous les types de schéma d' | ||
+ | * On peut préciser un pas de temps initial et un pas de temps maximal différent pour la branche d' | ||
- | On peut préciser un pas de temps initial et un pas de temps maximal différent pour la branche d' | ||
- | Il peut être utiliser avec tous les types de schéma d' | ||
==== Pas de temps critique ==== | ==== Pas de temps critique ==== | ||
Line 45: | Line 48: | ||
Il est possible de faire l' | Il est possible de faire l' | ||
+ | |||
+ | Le pas de temps est mis à jour sur base d'un nombre d' | ||
+ | |||
+ | Voici une représentation schématique des deux algorithmes disponibles : | ||
+ | <WRAP group> | ||
+ | <WRAP centeralign half column> | ||
+ | 1er cas : | ||
+ | {{: | ||
+ | </ | ||
+ | <WRAP centeralign half column> | ||
+ | 2ième cas : | ||
+ | {{: | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Voici deux exemples : | ||
+ | |||
+ | <WRAP group> | ||
+ | <WRAP centeralign half column> | ||
+ | 1er cas : | ||
+ | {{: | ||
+ | Le nombre maximum d' | ||
+ | </ | ||
+ | <WRAP centeralign half column> | ||
+ | 2ième cas : | ||
+ | {{: | ||
+ | Le nombre maximum d' | ||
+ | </ | ||
+ | </ | ||
+ | |||
On distincte les différents cas suivants : | On distincte les différents cas suivants : | ||
=== Schéma d' | === Schéma d' | ||
+ | |||
+ | Le nombre d' | ||
+ | |||
< | < | ||
- | tscm = CriticalTimeStepComputationMethod(metafor) | + | tscm = NbOfMechNRIterationsTimeStepComputationMethod(metafor) |
- | tscm.setExplicitTimeStepSecurity(_explicitTimeStepSecurity) | + | tscm.setTimeStepDivisionFactor(_timeStepDivisionFactor) |
- | tscm.setNbOfStepsForCriticalTimeStepUpdate(_nbOfStepsForCriticalTimeStepUpdate) | + | tscm.setMinimumTimeStep(_minimumTimeStep) |
+ | tscm.setMaxNbOfIteInAdaptOfTimeStep(_maxNbOfIteInAdaptOfTimeStep) | ||
+ | tscm.setNbOptiIte(_nbOptiIte) | ||
tsm.setTimeStepComputationMethod(tscm) | tsm.setTimeStepComputationMethod(tscm) | ||
</ | </ | ||
+ | |||
=== Schéma d' | === Schéma d' | ||
+ | |||
+ | Le nombre d' | ||
+ | |||
< | < | ||
- | tscm = CriticalTimeStepComputationMethod(metafor) | + | tscm = NbOfStaggeredTmNRIterationsTimeStepComputationMethod(metafor) |
- | tscm.setExplicitTimeStepSecurity(_explicitTimeStepSecurity) | + | tscm.setTimeStepDivisionFactor(_timeStepDivisionFactor) |
- | tscm.setNbOfStepsForCriticalTimeStepUpdate(_nbOfStepsForCriticalTimeStepUpdate) | + | tscm.setMinimumTimeStep(_minimumTimeStep) |
+ | tscm.setMaxNbOfIteInAdaptOfTimeStep(_maxNbOfIteInAdaptOfTimeStep) | ||
+ | tscm.setNbOptiIte(_nbOptiIte) | ||
tsm.setTimeStepComputationMethod(tscm) | tsm.setTimeStepComputationMethod(tscm) | ||
</ | </ | ||
+ | |||
=== Schéma d' | === Schéma d' | ||
+ | |||
+ | Le nombre d' | ||
+ | |||
< | < | ||
- | tscm = CriticalTimeStepComputationMethod(metafor) | + | tscm = NbOfCoupledTmNRIterationsTimeStepComputationMethod(metafor) |
- | tscm.setExplicitTimeStepSecurity(_explicitTimeStepSecurity) | + | tscm.setTimeStepDivisionFactor(_timeStepDivisionFactor) |
- | tscm.setNbOfStepsForCriticalTimeStepUpdate(_nbOfStepsForCriticalTimeStepUpdate) | + | tscm.setMinimumTimeStep(_minimumTimeStep) |
+ | tscm.setMaxNbOfIteInAdaptOfTimeStep(_maxNbOfIteInAdaptOfTimeStep) | ||
+ | tscm.setNbOptiIte(_nbOptiIte) | ||
tsm.setTimeStepComputationMethod(tscm) | tsm.setTimeStepComputationMethod(tscm) | ||
</ | </ | ||
+ | |||
=== Schéma d' | === Schéma d' | ||
+ | |||
+ | Le nombre d' | ||
+ | |||
< | < | ||
- | tscm = CriticalTimeStepComputationMethod(metafor) | + | tscm = NbOfAugLagMechNRIterationsTimeStepComputationMethod(metafor) |
- | tscm.setExplicitTimeStepSecurity(_explicitTimeStepSecurity) | + | tscm.setTimeStepDivisionFactor(_timeStepDivisionFactor) |
- | tscm.setNbOfStepsForCriticalTimeStepUpdate(_nbOfStepsForCriticalTimeStepUpdate) | + | tscm.setMinimumTimeStep(_minimumTimeStep) |
+ | tscm.setMaxNbOfIteInAdaptOfTimeStep(_maxNbOfIteInAdaptOfTimeStep) | ||
+ | tscm.setNbOptiIte(_nbOptiIte) | ||
tsm.setTimeStepComputationMethod(tscm) | tsm.setTimeStepComputationMethod(tscm) | ||
</ | </ | ||
Line 79: | Line 135: | ||
==== Erreur d' | ==== Erreur d' | ||
- | Il est possible de faire l' | + | Il est possible de faire l' |
+ | |||
+ | Le pas de temps courant est résolu jusqu' | ||
+ | |||
+ | Si le pas de temps est accepté, on diminue, on garde, ou on augmente le pas de temps sur base de la valeur de l' | ||
On distincte les différents cas suivants : | On distincte les différents cas suivants : | ||
- | === Schéma d' | + | === Schéma d' |
< | < | ||
tscm = QuasiStaticIntegrationErrorTimeStepComputationMethod(metafor) | tscm = QuasiStaticIntegrationErrorTimeStepComputationMethod(metafor) | ||
Line 95: | Line 155: | ||
< | < | ||
tscm = ExplicitIntegrationErrorTimeStepComputationMethod(metafor) | tscm = ExplicitIntegrationErrorTimeStepComputationMethod(metafor) | ||
- | tscm.setTimeStepDivisionFactor(_timeStepDivisionFactor) | ||
- | tscm.setMinimumTimeStep(_minimumTimeStep) | ||
tscm.setInitialIntegrationErrorTolerance(_initialIntegrationErrorTolerance) | tscm.setInitialIntegrationErrorTolerance(_initialIntegrationErrorTolerance) | ||
tscm.setInitialExplicitTimeStepSecurity(_initialExplicitTimeStepSecurity) | tscm.setInitialExplicitTimeStepSecurity(_initialExplicitTimeStepSecurity) | ||
Line 124: | Line 182: | ||
* Ces méthodes de mise à jour du pas de temps n'ont pas été testées dans le cas d'un schéma d' | * Ces méthodes de mise à jour du pas de temps n'ont pas été testées dans le cas d'un schéma d' | ||
+ | * Si il y a un jacobien négatif durant un pas de temps, nous avons l' | ||
+ | |||
+ | ==== Paramètres ==== | ||
+ | ^ Paramètre | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | ==== Méthode par défaut de chaque schéma d' | ||
+ | ^ Intégration temporelle | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
===== Divers ===== | ===== Divers ===== |
commit/2015/11_18.1447868627.txt.gz · Last modified: (external edit)