Commit 9fe4d60a authored by Stanislaw Gepner's avatar Stanislaw Gepner

Add a test in an Arpack driver and a comment in documentation. Minor documentation fix

parent 08b211b5
......@@ -1165,8 +1165,9 @@ The following parameters can be specified in the \texttt{PARAMETERS} section of
\item \inltt{Re}: sets the Reynolds number
\item \inltt{Kinvis}: sets the kinematic viscosity $\nu$.
\item \inltt{kdim}: sets the dimension of the Krylov subspace $\kappa$. Can be used in: \inltt{ModifiedArnoldi} and \inltt{Arpack}. Default value: 16.
\item \inltt{evtol}: sets the tolerance of the eigenvalues. Can be used in: \item \inltt{imagShift}: provide an imaginary shift to the direct sovler eigenvalue problem by the specified value.
ltt{ModifiedArnoldi} and \inltt{Arpack}. Default value: $10^{-6}$.
\item \inltt{evtol}: sets the tolerance of the eigenvalues. Can be used in: \item \inltt{imagShift}:
provide an imaginary shift to the direct solver eigenvalue problem by the specified value.
\inltt{ModifiedArnoldi} and \inltt{Arpack}. Default value: $0.0$. Works only with \inltt{Homogeneous} set to \inltt{1D} and inltt{ModeType} set to \inltt{SingleMode}.
\item \inltt{nits}: sets the maximum number of iterations. Can be used in: \inltt{ModifiedArnoldi} and \inltt{Arpack}. Default value: 500.
\item \inltt{LZ}: sets the length in the spanswise direction $L_z$. Can be used in \inltt{Homogeneous} set to \inltt{1D}. Default value: 1.
\item \inltt{HomModesZ}: sets the number of planes in the homogeneous directions. Can be used in \inltt{Homogeneous} set to \inltt{1D} and \inltt{ModeType} set to \inltt{MultipleModes}.
......
......@@ -109,7 +109,21 @@ void DriverArnoldi::v_InitObject(ostream &out)
m_session->LoadParameter("realShift", m_realShift, 0.0);
m_equ[0]->SetLambda(m_realShift);
m_session->LoadParameter("imagShift", m_imagShift, 0.0);
m_session->LoadParameter("imagShift",m_imagShift,0.0);
// The imaginary shift is applied at system assembly
// Only if using HOMOGENEOUS expansion and ModeType set to SingleMode
if(m_imagShift != 0.0)
{
if(!m_session->DefinesSolverInfo("HOMOGENEOUS")&&!m_session->DefinesSolverInfo("ModeType"))
{
NEKERROR(ErrorUtil::efatal, "Imaginary shift only supported with HOMOGENEOUS expansion and ModeType set to SingleMode");
}
else if(!boost::iequals(m_session->GetSolverInfo("ModeType"),"SingleMode"))
{
NEKERROR(ErrorUtil::efatal, "Imaginary shift only supported with HOMOGENEOUS expansion and ModeType set to SingleMode");
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment