Commit cd38f0e5 authored by Douglas Serson's avatar Douglas Serson

Fix problem with time accuracy of VCSMapping

parent 695d5b35
...@@ -75,10 +75,9 @@ namespace Nektar ...@@ -75,10 +75,9 @@ namespace Nektar
const Array<OneD, const Array<OneD, NekDouble> > &N, const Array<OneD, const Array<OneD, NekDouble> > &N,
NekDouble kinvis) NekDouble kinvis)
{ {
m_pressureCalls++;
if(m_HBCdata.num_elements()>0) if(m_HBCdata.num_elements()>0)
{ {
m_pressureCalls++;
// Rotate HOPBCs storage // Rotate HOPBCs storage
RollOver(m_pressureHBCs); RollOver(m_pressureHBCs);
......
...@@ -221,7 +221,7 @@ namespace Nektar ...@@ -221,7 +221,7 @@ namespace Nektar
} }
// Add mapping terms // Add mapping terms
ApplyIncNSMappingForcing( outarray ); ApplyIncNSMappingForcing( inarray, outarray);
// Calculate High-Order pressure boundary conditions // Calculate High-Order pressure boundary conditions
m_extrapolation->EvaluatePressureBCs(inarray,outarray,m_kinvis); m_extrapolation->EvaluatePressureBCs(inarray,outarray,m_kinvis);
...@@ -739,6 +739,7 @@ namespace Nektar ...@@ -739,6 +739,7 @@ namespace Nektar
* Explicit terms of the mapping * Explicit terms of the mapping
*/ */
void VCSMapping::ApplyIncNSMappingForcing( void VCSMapping::ApplyIncNSMappingForcing(
const Array<OneD, Array<OneD, NekDouble> > &inarray,
Array<OneD, Array<OneD, NekDouble> > &outarray) Array<OneD, Array<OneD, NekDouble> > &outarray)
{ {
int physTot = m_fields[0]->GetTotPoints(); int physTot = m_fields[0]->GetTotPoints();
...@@ -758,7 +759,7 @@ namespace Nektar ...@@ -758,7 +759,7 @@ namespace Nektar
{ {
for (int i = 0; i < m_nConvectiveFields; ++i) for (int i = 0; i < m_nConvectiveFields; ++i)
{ {
vel[i] = m_fields[i]->GetPhys(); vel[i] = inarray[i];
m_fields[0]->HomogeneousBwdTrans(vel[i],velPhys[i]); m_fields[0]->HomogeneousBwdTrans(vel[i],velPhys[i]);
} }
} }
...@@ -766,8 +767,8 @@ namespace Nektar ...@@ -766,8 +767,8 @@ namespace Nektar
{ {
for (int i = 0; i < m_nConvectiveFields; ++i) for (int i = 0; i < m_nConvectiveFields; ++i)
{ {
vel[i] = m_fields[i]->GetPhys(); vel[i] = inarray[i];
Vmath::Vcopy(physTot, m_fields[i]->GetPhys(), 1, velPhys[i], 1); Vmath::Vcopy(physTot, inarray[i], 1, velPhys[i], 1);
} }
} }
......
...@@ -64,6 +64,7 @@ namespace Nektar ...@@ -64,6 +64,7 @@ namespace Nektar
// //
void ApplyIncNSMappingForcing ( void ApplyIncNSMappingForcing (
const Array<OneD, Array<OneD, NekDouble> > &inarray,
Array<OneD, Array<OneD, NekDouble> > &outarray); Array<OneD, Array<OneD, NekDouble> > &outarray);
virtual ~VCSMapping(); virtual ~VCSMapping();
......
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