Fem: Rename property SurfaceChargeDensity to ElectricFluxDensity

This commit is contained in:
marioalexis
2025-03-27 09:40:07 -03:00
committed by Benjamin Nauck
parent 406a834a6d
commit a8372c1f55
3 changed files with 26 additions and 15 deletions

View File

@@ -416,14 +416,14 @@ Note: has no effect if a solid was selected</string>
<item row="0" column="0">
<widget class="QLabel" name="surfacechargedensityLbl">
<property name="text">
<string>Surface Charge Density:</string>
<string>Electric Flux Density:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="Gui::QuantitySpinBox" name="qsb_surface_charge_density">
<widget class="Gui::QuantitySpinBox" name="qsb_electric_flux_density">
<property name="toolTip">
<string>Surface charge density</string>
<string>Normal component of electric displacement field</string>
</property>
<property name="unit" stdset="0">
<string notr="true">C/m^2</string>

View File

@@ -145,9 +145,11 @@ class ConstraintElectrostaticPotential(base_fempythonobject.BaseFemPythonObject)
prop.append(
_PropHelper(
type="App::PropertySurfaceChargeDensity",
name="SurfaceChargeDensity",
name="ElectricFluxDensity",
group="Parameter",
doc="Free surface charge density",
doc="Electric displacement field D.\n"
+ "For interfaces, it represents the difference\n"
+ "between the normal component in the two media",
value="0 C/m^2",
)
)
@@ -299,3 +301,12 @@ class ConstraintElectrostaticPotential(base_fempythonobject.BaseFemPythonObject)
except Base.PropertyError:
pass
# set electric flux density from old surface charge density
try:
obj.ElectricFluxDensity = obj.getPropertyByName("SurfaceChargeDensity")
obj.setPropertyStatus("SurfaceChargeDensity", "-LockDynamic")
obj.removeProperty("SurfaceChargeDensity")
except Base.PropertyError:
pass

View File

@@ -171,9 +171,9 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel):
self.electric_infinity_changed,
)
QtCore.QObject.connect(
self.parameter_widget.qsb_surface_charge_density,
self.parameter_widget.qsb_electric_flux_density,
QtCore.SIGNAL("valueChanged(Base::Quantity)"),
self.surface_charge_density_changed,
self.electric_flux_density_changed,
)
self.init_parameter_widget()
@@ -232,7 +232,7 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel):
self.electric_infinity = self.obj.ElectricInfinity
self.capacitance_body_enabled = self.obj.CapacitanceBodyEnabled
self.capacitance_body = self.obj.CapacitanceBody
self.surface_charge_density = self.obj.SurfaceChargeDensity
self.electric_flux_density = self.obj.ElectricFluxDensity
def _set_params(self):
self.obj.Potential = self.potential
@@ -258,7 +258,7 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel):
self.obj.CapacitanceBodyEnabled = self.capacitance_body_enabled
self.obj.CapacitanceBody = self.capacitance_body
self.obj.SurfaceChargeDensity = self.surface_charge_density
self.obj.ElectricFluxDensity = self.electric_flux_density
def init_parameter_widget(self):
self._get_params()
@@ -313,11 +313,11 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel):
self.obj, "CapacitanceBody"
)
self.parameter_widget.qsb_surface_charge_density.setProperty(
"value", self.surface_charge_density
self.parameter_widget.qsb_electric_flux_density.setProperty(
"value", self.electric_flux_density
)
FreeCADGui.ExpressionBinding(self.parameter_widget.qsb_surface_charge_density).bind(
self.obj, "SurfaceChargeDensity"
FreeCADGui.ExpressionBinding(self.parameter_widget.qsb_electric_flux_density).bind(
self.obj, "ElectricFluxDensity"
)
self.bc_enum = self.obj.getEnumerationsOfProperty("BoundaryCondition")
@@ -397,8 +397,8 @@ class _TaskPanel(base_femtaskpanel._BaseTaskPanel):
self.capacitance_body = value
self.parameter_widget.spb_capacitance_body.setValue(value)
def surface_charge_density_changed(self, value):
self.surface_charge_density = value
def electric_flux_density_changed(self, value):
self.electric_flux_density = value
def boundary_condition_changed(self, index):
self.boundary_condition = self.bc_enum[index]