ext: fix in mur-ABC extension

pull/1/head
Thorsten Liebig 2011-03-17 10:29:48 +01:00
parent aba33c58bd
commit 14b0dd5104
3 changed files with 10 additions and 9 deletions

View File

@ -112,8 +112,9 @@ void Engine_Ext_Mur_ABC::DoPreVoltageUpdates(int threadID)
case Engine::SSE: case Engine::SSE:
{ {
Engine_sse* eng_sse = (Engine_sse*) m_Eng; Engine_sse* eng_sse = (Engine_sse*) m_Eng;
for (pos[m_nyP]=0; pos[m_nyP]<m_numLines[0]; ++pos[m_nyP]) for (unsigned int lineX=0; lineX<m_numX.at(threadID); ++lineX)
{ {
pos[m_nyP]=lineX+m_start.at(threadID);
pos_shift[m_nyP] = pos[m_nyP]; pos_shift[m_nyP] = pos[m_nyP];
for (pos[m_nyPP]=0; pos[m_nyPP]<m_numLines[1]; ++pos[m_nyPP]) for (pos[m_nyPP]=0; pos[m_nyPP]<m_numLines[1]; ++pos[m_nyPP])
{ {

View File

@ -21,10 +21,10 @@
#define ENG_EXT_PRIO_DEFAULT 0 //default engine extension priority #define ENG_EXT_PRIO_DEFAULT 0 //default engine extension priority
// priority definitions for some important extensions // priority definitions for some important extensions
#define ENG_EXT_PRIO_UPML 1e6; //unaxial pml extension priority #define ENG_EXT_PRIO_UPML +1e6 //unaxial pml extension priority
#define ENG_EXT_PRIO_EXCITATION 3000 //excitation priority #define ENG_EXT_PRIO_EXCITATION -1000 //excitation priority
#define ENG_EXT_PRIO_CYLINDER 2000 //cylindrial extension priority #define ENG_EXT_PRIO_CYLINDER -2000 //cylindrial extension priority
#define ENG_EXT_PRIO_CYLINDERMULTIGRID -1000; //cylindrial multi-grid extension priority #define ENG_EXT_PRIO_CYLINDERMULTIGRID -3000 //cylindrial multi-grid extension priority
#include <string> #include <string>

View File

@ -102,12 +102,12 @@ void Operator_Ext_Mur_ABC::SetDirection(int ny, bool top_ny)
} }
else else
{ {
m_LineNr = m_Op->GetNumberOfLines(m_ny)-1; m_LineNr = m_Op->GetOriginalNumLines(m_ny)-1;
m_LineNr_Shift = m_Op->GetNumberOfLines(m_ny) - 2; m_LineNr_Shift = m_Op->GetOriginalNumLines(m_ny) - 2;
} }
m_numLines[0] = m_Op->GetNumberOfLines(m_nyP); m_numLines[0] = m_Op->GetOriginalNumLines(m_nyP);
m_numLines[1] = m_Op->GetNumberOfLines(m_nyPP); m_numLines[1] = m_Op->GetOriginalNumLines(m_nyPP);
m_Mur_Coeff_nyP = Create2DArray<FDTD_FLOAT>(m_numLines); m_Mur_Coeff_nyP = Create2DArray<FDTD_FLOAT>(m_numLines);
m_Mur_Coeff_nyPP = Create2DArray<FDTD_FLOAT>(m_numLines); m_Mur_Coeff_nyPP = Create2DArray<FDTD_FLOAT>(m_numLines);