Commit 3569667d authored by Chris Cantwell's avatar Chris Cantwell
Browse files

Fixed logic bug in parallel iterative static condensation solver.


git-svn-id: https://gforge.sci.utah.edu/svn/nektar/trunk@3998 305cdda6-5ce1-45b3-a98d-dfc68c8b3305
parent 66eec7d0
......@@ -184,36 +184,32 @@ namespace Nektar
if(nGlobHomBndDofs)
{
if(nIntDofs || ((nDirBndDofs) && (!dirForcCalculated)
&& (atLastLevel)) )
// construct boundary forcing
if( nIntDofs && ((nDirBndDofs) && (!dirForcCalculated)
&& (atLastLevel)) )
{
// construct boundary forcing
if( nIntDofs && ((nDirBndDofs) && (!dirForcCalculated)
&& (atLastLevel)) )
{
//include dirichlet boundary forcing
DNekScalBlkMat &BinvD = *m_BinvD;
DNekScalBlkMat &SchurCompl = *m_schurCompl;
pLocToGloMap->GlobalToLocalBnd(V_GlobBnd,V_LocBnd);
V_LocBnd = BinvD*F_Int + SchurCompl*V_LocBnd;
}
else if((nDirBndDofs) && (!dirForcCalculated)
&& (atLastLevel))
{
//include dirichlet boundary forcing
DNekScalBlkMat &SchurCompl = *m_schurCompl;
pLocToGloMap->GlobalToLocalBnd(V_GlobBnd,V_LocBnd);
V_LocBnd = SchurCompl*V_LocBnd;
}
else
{
DNekScalBlkMat &BinvD = *m_BinvD;
V_LocBnd = BinvD*F_Int;
}
pLocToGloMap->AssembleBnd(V_LocBnd,V_GlobHomBndTmp,
nDirBndDofs);
F_HomBnd = F_HomBnd - V_GlobHomBndTmp;
//include dirichlet boundary forcing
DNekScalBlkMat &BinvD = *m_BinvD;
DNekScalBlkMat &SchurCompl = *m_schurCompl;
pLocToGloMap->GlobalToLocalBnd(V_GlobBnd,V_LocBnd);
V_LocBnd = BinvD*F_Int + SchurCompl*V_LocBnd;
}
else if((nDirBndDofs) && (!dirForcCalculated)
&& (atLastLevel))
{
//include dirichlet boundary forcing
DNekScalBlkMat &SchurCompl = *m_schurCompl;
pLocToGloMap->GlobalToLocalBnd(V_GlobBnd,V_LocBnd);
V_LocBnd = SchurCompl*V_LocBnd;
}
else
{
DNekScalBlkMat &BinvD = *m_BinvD;
V_LocBnd = BinvD*F_Int;
}
pLocToGloMap->AssembleBnd(V_LocBnd,V_GlobHomBndTmp,
nDirBndDofs);
F_HomBnd = F_HomBnd - V_GlobHomBndTmp;
// solve boundary system
if(atLastLevel)
......
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