fixed priority system for dispersive media

pull/1/head
Thorsten Liebig 2012-09-11 09:42:15 +02:00
parent 3dc6cbebbd
commit 3dd48d8cf9
2 changed files with 5 additions and 7 deletions

View File

@ -84,12 +84,10 @@ bool Operator_Ext_ConductingSheet::BuildExtension()
if (m_CC_R0_included && (n==2) && (pos[0]==0))
disable_pos = true;
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,CSProperties::CONDUCTINGSHEET, false, &cs_sheet);
if (prop)
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,(CSProperties::PropertyType)(CSProperties::METAL | CSProperties::MATERIAL), false, &cs_sheet);
CSPropConductingSheet* cs_prop = dynamic_cast<CSPropConductingSheet*>(prop);
if (cs_prop)
{
CSPropConductingSheet* cs_prop = dynamic_cast<CSPropConductingSheet*>(prop);
if (cs_prop==NULL)
return false; //sanity check, this should never happen
if (cs_sheet==NULL)
return false; //sanity check, this should never happen
if (cs_sheet->GetDimension()!=2)

View File

@ -151,7 +151,7 @@ bool Operator_Ext_LorentzMaterial::BuildExtension()
if (m_CC_R0_included && (n==2) && (pos[0]==0))
coord[1] = m_Op->GetDiscLine(1,0);
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,CSProperties::LORENTZMATERIAL, true);
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,(CSProperties::PropertyType)(CSProperties::METAL | CSProperties::MATERIAL), true);
if ((mat = prop->ToLorentzMaterial()))
{
w_plasma = mat->GetEpsPlasmaFreqWeighted(order,n,coord) * 2 * PI;
@ -176,7 +176,7 @@ bool Operator_Ext_LorentzMaterial::BuildExtension()
if (m_Op->GetYeeCoords(n,pos,coord,true)==false)
continue;
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,CSProperties::LORENTZMATERIAL, true);
CSProperties* prop = m_Op->GetGeometryCSX()->GetPropertyByCoordPriority(coord,(CSProperties::PropertyType)(CSProperties::METAL | CSProperties::MATERIAL), true);
if ((mat = prop->ToLorentzMaterial()))
{
w_plasma = mat->GetMuePlasmaFreqWeighted(order,n,coord) * 2 * PI;