| 468 | |
| 469 | |
| 470 | int |
| 471 | StaticAnalysis::setAlgorithm(EquiSolnAlgo &theNewAlgorithm) |
| 472 | { |
| 473 | // invoke the destructor on the old one |
| 474 | if (theAlgorithm != 0) |
| 475 | delete theAlgorithm; |
| 476 | |
| 477 | // first set the links needed by the Algorithm |
| 478 | theAlgorithm = &theNewAlgorithm; |
| 479 | theAlgorithm->setLinks(*theAnalysisModel, *theIntegrator, *theSOE, theTest); |
| 480 | |
| 481 | if (theTest != 0) |
| 482 | theAlgorithm->setConvergenceTest(theTest); |
| 483 | else // this else is for backward compatibility. |
| 484 | theTest = theAlgorithm->getConvergenceTest(); |
| 485 | |
| 486 | // invoke domainChanged() either indirectly or directly |
| 487 | // domainStamp = 0; |
| 488 | if (domainStamp != 0) |
| 489 | theAlgorithm->domainChanged(); |
| 490 | |
| 491 | return 0; |
| 492 | } |
| 493 | |
| 494 | int |
| 495 | StaticAnalysis::setIntegrator(StaticIntegrator &theNewIntegrator) |
nothing calls this directly
no test coverage detected