[FEM] Elmer: set constraints for solver systems

- set constraints according to the Elmer docs (no conversion necessary, existing properties just stay integers)
This commit is contained in:
Uwe
2022-08-14 01:45:34 +02:00
parent d985525893
commit a2e473c5b7
2 changed files with 8 additions and 8 deletions

View File

@@ -66,7 +66,7 @@ class Proxy(equation.Proxy):
super(Proxy, self).__init__(obj)
obj.addProperty(
"App::PropertyInteger",
"App::PropertyIntegerConstraint",
"BiCGstablDegree",
"Linear System",
"Polynom degree for iterative method 'BiCGstabl'"
@@ -78,7 +78,7 @@ class Proxy(equation.Proxy):
""
)
obj.addProperty(
"App::PropertyInteger",
"App::PropertyIntegerConstraint",
"LinearIterations",
"Linear System",
""
@@ -130,9 +130,9 @@ class Proxy(equation.Proxy):
""
)
obj.BiCGstablDegree = 2
obj.BiCGstablDegree = (2, 2, 10, 1)
obj.LinearDirectMethod = LINEAR_DIRECT
obj.LinearIterations = 500
obj.LinearIterations = (500, 1, int(1e6), 50)
obj.LinearIterativeMethod = LINEAR_ITERATIVE
obj.LinearIterativeMethod = "BiCGStab"
obj.LinearPreconditioning = LINEAR_PRECONDITIONING

View File

@@ -42,13 +42,13 @@ class Proxy(linear.Proxy):
super(Proxy, self).__init__(obj)
obj.addProperty(
"App::PropertyInteger",
"App::PropertyIntegerConstraint",
"NonlinearIterations",
"Nonlinear System",
"Maximum number of iterations"
)
obj.addProperty(
"App::PropertyInteger",
"App::PropertyIntegerConstraint",
"NonlinearNewtonAfterIterations",
"Nonlinear System",
""
@@ -75,8 +75,8 @@ class Proxy(linear.Proxy):
)
)
obj.NonlinearIterations = 500
obj.NonlinearNewtonAfterIterations = 3
obj.NonlinearIterations = (500, 1, int(1e6), 50)
obj.NonlinearNewtonAfterIterations = (3, 1, 100, 1)
# for small numbers we must set an expression because we don't have a UI,
# the user has to view and edit the tolerance via the property editor and
# this does not yet allow to view and edit small numbers in scientific notation