コード例 #1
0
ファイル: NonlinearEigen.C プロジェクト: amccaskey/moose
void
NonlinearEigen::takeStep()
{
  _console << " Nonlinear iteration starts"  << std::endl;

  // nonlinear solve
  preSolve();
  _problem.timestepSetup();
  _problem.advanceState();
  _problem.execute(EXEC_TIMESTEP_BEGIN);

  nonlinearSolve(_rel_tol, _abs_tol, _pfactor, _eigenvalue);

  postSolve();
  printEigenvalue();

  _problem.onTimestepEnd();
  _problem.execute(EXEC_TIMESTEP_END);
}
コード例 #2
0
ファイル: InversePowerMethod.C プロジェクト: AhmedAly83/moose
void
InversePowerMethod::takeStep()
{
  // save the initial guess and mark a new time step
  _problem.advanceState();

  preSolve();
  Real initial_res;
  inversePowerIteration(_min_iter, _max_iter, _pfactor, _cheb_on, _eig_check_tol, true,
                        _solution_diff_name, _sol_check_tol,
                        _eigenvalue, initial_res);
  postSolve();

  if (lastSolveConverged())
  {
    printEigenvalue();
    _problem.onTimestepEnd();
    _problem.execute(EXEC_TIMESTEP_END);
  }
}
コード例 #3
0
ファイル: NonlinearEigen.C プロジェクト: roystgnr/moose
void
NonlinearEigen::takeStep()
{
  _console << " Nonlinear iteration starts"  << std::endl;

  // nonlinear solve
  _problem.computeUserObjects(EXEC_TIMESTEP_BEGIN, UserObjectWarehouse::PRE_AUX);
  preSolve();
  _problem.timestepSetup();
  _problem.advanceState();
  _problem.computeUserObjects(EXEC_TIMESTEP_BEGIN, UserObjectWarehouse::POST_AUX);

  nonlinearSolve(_rel_tol, _abs_tol, _pfactor, _eigenvalue);

  postSolve();
  printEigenvalue();

  _problem.computeUserObjects(EXEC_TIMESTEP_END, UserObjectWarehouse::PRE_AUX);
  _problem.onTimestepEnd();
  _problem.computeAuxiliaryKernels(EXEC_TIMESTEP_END);
  _problem.computeUserObjects(EXEC_TIMESTEP_END, UserObjectWarehouse::POST_AUX);
}
コード例 #4
0
ファイル: NonlinearEigen.C プロジェクト: iiknoww/moose-1
void
NonlinearEigen::postSolve()
{
  printEigenvalue();
}