Source code for abaqus.Optimization.OptimizationTask

from abaqusConstants import *
from .BeadFixedRegion import BeadFixedRegion
from .BeadGrowth import BeadGrowth
from .BeadPenetrationCheck import BeadPenetrationCheck
from .BeadPlanarSymmetry import BeadPlanarSymmetry
from .BeadPointSymmetry import BeadPointSymmetry
from .BeadRotationalSymmetry import BeadRotationalSymmetry
from .DesignDirection import DesignDirection
from .DrillControl import DrillControl
from .FixedRegion import FixedRegion
from .FrozenArea import FrozenArea
from .Growth import Growth
from .ObjectiveFunction import ObjectiveFunction
from .OptimizationConstraint import OptimizationConstraint
from .OptimizationObjectiveArray import OptimizationObjectiveArray
from .OptimizationTaskBase import OptimizationTaskBase
from .PenetrationCheck import PenetrationCheck
from .ShapeDemoldControl import ShapeDemoldControl
from .ShapeMemberSize import ShapeMemberSize
from .ShapePlanarSymmetry import ShapePlanarSymmetry
from .ShapePointSymmetry import ShapePointSymmetry
from .ShapeRotationalSymmetry import ShapeRotationalSymmetry
from .SingleTermDesignResponse import SingleTermDesignResponse
from .SizingClusterAreas import SizingClusterAreas
from .SizingCyclicSymmetry import SizingCyclicSymmetry
from .SizingFrozenArea import SizingFrozenArea
from .SizingMemberSize import SizingMemberSize
from .SizingPlanarSymmetry import SizingPlanarSymmetry
from .SizingPointSymmetry import SizingPointSymmetry
from .SizingRotationalSymmetry import SizingRotationalSymmetry
from .SlideRegionControl import SlideRegionControl
from .StampControl import StampControl
from .StepOptionArray import StepOptionArray
from .TopologyCyclicSymmetry import TopologyCyclicSymmetry
from .TopologyDemoldControl import TopologyDemoldControl
from .TopologyMemberSize import TopologyMemberSize
from .TopologyMillingControl import TopologyMillingControl
from .TopologyOverhangControl import TopologyOverhangControl
from .TopologyPlanarSymmetry import TopologyPlanarSymmetry
from .TopologyPointSymmetry import TopologyPointSymmetry
from .TopologyRotationalSymmetry import TopologyRotationalSymmetry
from .TurnControl import TurnControl
from ..Region.Region import Region


[docs]class OptimizationTask(OptimizationTaskBase):
[docs] def SingleTermDesignResponse(self, name: str, identifier: str, csys: int = None, drivingRegion: str = None, operation: SymbolicConstant = SUM, region: SymbolicConstant = MODEL, shellLayer: SymbolicConstant = MAXIMUM, stepOperation: SymbolicConstant = SUM, stepOptions: StepOptionArray = None) -> SingleTermDesignResponse: """This method creates a SingleTermDesignResponse object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SingleTermDesignResponse Parameters ---------- name A String specifying the design response repository key. identifier A String specifying the name of the variable identifier. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. drivingRegion None or a sequence of Floats specifying the driving region used when *identifier* is an internal nodal variable. The default value is None. operation A SymbolicConstant specifying the operation used on values in the region. Possible values are MAXIMUM, MINIMUM, and SUM. The default value is SUM. region The SymbolicConstant MODEL or a Region object specifying the region of the design response variable. The default value is MODEL. shellLayer A SymbolicConstant specifying the location used for shell layer values. Possible values are BOTTOM, MAXIMUM, MIDDLE, MINIMUM, and TOP. The default value is MAXIMUM. stepOperation A SymbolicConstant specifying the operation used on values across steps and load cases. Possible values are MAXIMUM, MINIMUM, and SUM. The default value is SUM. stepOptions A StepOptionArray object. Returns ------- A SingleTermDesignResponse object. """ self.designResponses[name] = singleTermDesignResponse = SingleTermDesignResponse(name, identifier, csys, drivingRegion, operation, region, shellLayer, stepOperation, stepOptions) return singleTermDesignResponse
[docs] def ObjectiveFunction(self, name: str, objectives: OptimizationObjectiveArray, target: SymbolicConstant = MINIMIZE) -> ObjectiveFunction: """This method creates an ObjectiveFunction object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ObjectiveFunction Parameters ---------- name A String specifying the objective function repository key. objectives An OptimizationObjectiveArray object. target A SymbolicConstant specifying the target of the objective function. Possible values are MINIMIZE, MAXIMIZE, and MINIMIZE_MAXIMUM. The default value is MINIMIZE. Returns ------- An ObjectiveFunction object. Raises ------ InvalidNameError RangeError """ self.objectiveFunctions[name] = objectiveFunction = ObjectiveFunction(name, objectives, target) return objectiveFunction
[docs] def OptimizationConstraint(self, name: str, designResponse: str, restrictionValue: float, restrictionMethod: SymbolicConstant = ABSOLUTE_EQUAL) -> OptimizationConstraint: """This method creates an OptimizationConstraint object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].OptimizationConstraint Parameters ---------- name A String specifying the optimization constraint repository key. designResponse A String specifying the name of the design response to constrain. restrictionValue A Float specifying the value to which the design response should be constrained. restrictionMethod A SymbolicConstant specifying the method used to constrain the design response. Possible values are ABSOLUTE_EQUAL, ABSOLUTE_GREATER_THAN_EQUAL, ABSOLUTE_LESS_THAN_EQUAL, RELATIVE_EQUAL, RELATIVE_GREATER_THAN_EQUAL, and RELATIVE_LESS_THAN_EQUAL. The default value is ABSOLUTE_EQUAL. Returns ------- An OptimizationConstraint object. Raises ------ InvalidNameError RangeError """ self.optimizationConstraints[name] = optimizationConstraint = OptimizationConstraint(name, designResponse, restrictionValue, restrictionMethod) return optimizationConstraint
[docs] def BeadFixedRegion(self, name: str, region: Region, csys: int = None, u1: Boolean = OFF, u2: Boolean = OFF, u3: Boolean = OFF) -> BeadFixedRegion: """This method creates a BeadFixedRegion object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadFixedRegion Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. u1 A Boolean specifying whether to fix the region in the 1-direction. The default value is OFF. u2 A Boolean specifying whether to fix the region in the 2-direction. The default value is OFF. u3 A Boolean specifying whether to fix the region in the 3-direction. The default value is OFF. Returns ------- A BeadFixedRegion object. """ self.geometricRestrictions[name] = geometricRestriction = BeadFixedRegion(name, region, csys, u1, u2, u3) return geometricRestriction
[docs] def BeadGrowth(self, name: str, region: Region, beadGrowth: float = 0, shrink: float = 0) -> BeadGrowth: """This method creates a BeadGrowth object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadGrowth Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. beadGrowth A Float specifying the maximum optimization displacement in the growth direction. Either *beadGrowth* or *shrink* or both must be specified. The default value is 0.0. shrink A Float specifying the maximum optimization displacement in the shrink direction. Either *beadGrowth* or *shrink* or both must be specified The default value is 0.0. Returns ------- A BeadGrowth object. """ self.geometricRestrictions[name] = geometricRestriction = BeadGrowth(name, region, beadGrowth, shrink) return geometricRestriction
[docs] def BeadPenetrationCheck(self, name: str, beadPenetrationCheckRegion: Region, region: Region) -> BeadPenetrationCheck: """This method creates a BeadPenetrationCheck object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadPenetrationCheck Parameters ---------- name A String specifying the geometric restriction repository key. beadPenetrationCheckRegion A Region object specifying the penetration check region. region A Region object specifying the region to which the geometric restriction is applied. Returns ------- A BeadPenetrationCheck object. """ self.geometricRestrictions[name] = geometricRestriction = BeadPenetrationCheck(name, beadPenetrationCheckRegion, region) return geometricRestriction
[docs] def BeadPlanarSymmetry(self, name: str, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None) -> BeadPlanarSymmetry: """This method creates a BeadPlanarSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadPlanarSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. Returns ------- A BeadPlanarSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = BeadPlanarSymmetry(name, region, axis, csys) return geometricRestriction
[docs] def BeadPointSymmetry(self, name: str, region: Region, csys: int = None) -> BeadPointSymmetry: """This method creates a BeadPointSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadPointSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. csys None or a DatumCsys object specifying the position of the symmetry point defined as the origin of a local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. Returns ------- A BeadPointSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = BeadPointSymmetry(name, region, csys) return geometricRestriction
[docs] def BeadRotationalSymmetry(self, name: str, angle: float, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None) -> BeadRotationalSymmetry: """This method creates a BeadRotationalSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].BeadRotationalSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. angle A Float specifying the repeating segment size, an angle in degrees. region A Region object specifying the region to which the geometric restriction is applied. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. Returns ------- A BeadRotationalSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = BeadRotationalSymmetry(name, angle, region, axis, csys) return geometricRestriction
[docs] def DesignDirection(self, name: str, region: Region, csys: int = None, mainPoint: str = None, mainPointDetermination: SymbolicConstant = MAXIMUM, movementRestriction: SymbolicConstant = VECTOR, presumeFeasibleRegionAtStart: Boolean = ON, u1: Boolean = ON, u2: Boolean = ON, u3: Boolean = ON) -> DesignDirection: """This method creates a DesignDirection object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].DesignDirection Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. mainPoint None or a Region object specifying the main point used when *mainPointDetermination* is SPECIFY. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for assigning point priority. Possible values are MAXIMUM, MINIMUM, and SPECIFY. The default value is MAXIMUM. movementRestriction A SymbolicConstant specifying whether movement in the region should follow only the direction of the *mainPoint*, only the magnitude, or both the magnitude of the *mainPoint* and the directions specified by *u1*, *u2* and *u3*. Possible values are DIRECTION, MAGNITUDE, and VECTOR. The default value is VECTOR. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. u1 A Boolean specifying whether movement in the region should follow the *masterPoint* in the 1-direction. This is used when *movementRestriction* is VECTOR. The default value is ON. u2 A Boolean specifying whether movement in the region should follow the *masterPoint* in the 2-direction. This is used when *movementRestriction* is VECTOR. The default value is ON. u3 A Boolean specifying whether movement in the region should follow the *masterPoint* in the 3-direction. This is used when *movementRestriction* is VECTOR. The default value is ON. Returns ------- A DesignDirection object. """ self.geometricRestrictions[name] = geometricRestriction = DesignDirection(name, region, csys, mainPoint, mainPointDetermination, movementRestriction, presumeFeasibleRegionAtStart, u1, u2, u3) return geometricRestriction
[docs] def DrillControl(self, name: str, clientDirection: tuple, region: Region, csys: int = None, drawAngle: float = 0, mainPoint: str = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0, undercutTolerance: float = 0) -> DrillControl: """This method creates a DrillControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].DrillControl Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the direction of the drill axis positioned at the *csys* origin. Instead of through a ConstrainedSketchVertex, each point may be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. drawAngle A Float specifying the draw angle. The default value is 0.0. mainPoint None or a Region object specifying the main point used when *mainPointDetermination* is SPECIFY. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for assigning point priority. Possible values are MAXIMUM, MINIMUM, and SPECIFY. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. undercutTolerance A Float specifying the undercut tolerance. The default value is 0.0. Returns ------- A DrillControl object. """ self.geometricRestrictions[name] = geometricRestriction = DrillControl(name, clientDirection, region, csys, drawAngle, mainPoint, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3, undercutTolerance) return geometricRestriction
[docs] def FixedRegion(self, name: str, region: Region, csys: int = None, presumeFeasibleRegionAtStart: Boolean = ON, u1: Boolean = OFF, u2: Boolean = OFF, u3: Boolean = OFF) -> FixedRegion: """This method creates a FixedRegion object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].FixedRegion Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. u1 A Boolean specifying whether to fix the region in the 1-direction. The default value is OFF. u2 A Boolean specifying whether to fix the region in the 2-direction. The default value is OFF. u3 A Boolean specifying whether to fix the region in the 3-direction. The default value is OFF. Returns ------- A FixedRegion object. """ self.geometricRestrictions[name] = geometricRestriction = FixedRegion(name, region, csys, presumeFeasibleRegionAtStart, u1, u2, u3) return geometricRestriction
[docs] def FrozenArea(self, name: str, region: Region = Region()) -> FrozenArea: """This method creates a FrozenArea object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].FrozenArea Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. Returns ------- A FrozenArea object. """ self.geometricRestrictions[name] = geometricRestriction = FrozenArea(name, region) return geometricRestriction
[docs] def Growth(self, name: str, region: Region, growth: float = 0, presumeFeasibleRegionAtStart: Boolean = ON, shrink: float = 0) -> Growth: """This method creates a Growth object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].Growth Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. growth A Float specifying the maximum optimization displacement in the growth direction. Either *growth* or *shrink* or both must be specified. The default value is 0.0. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. shrink A Float specifying the maximum optimization displacement in the shrink direction. Either *growth* or *shrink* or both must be specified The default value is 0.0. Returns ------- A Growth object. """ self.geometricRestrictions[name] = geometricRestriction = Growth(name, region, growth, presumeFeasibleRegionAtStart, shrink) return geometricRestriction
[docs] def PenetrationCheck(self, name: str, penetrationCheckRegion: Region, region: Region, presumeFeasibleRegionAtStart: Boolean = ON) -> PenetrationCheck: """This method creates a PenetrationCheck object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].PenetrationCheck Parameters ---------- name A String specifying the geometric restriction repository key. penetrationCheckRegion A Region object specifying the penetration check region. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. Returns ------- A PenetrationCheck object. """ self.geometricRestrictions[name] = geometricRestriction = PenetrationCheck(name, penetrationCheckRegion, region, presumeFeasibleRegionAtStart) return geometricRestriction
[docs] def ShapeDemoldControl(self, name: str, pullDirection: tuple, region: Region, collisionCheckRegion: SymbolicConstant = DEMOLD_REGION, csys: int = None, drawAngle: float = 0, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0, undercutTolerance: float = 0) -> ShapeDemoldControl: """This method creates a ShapeDemoldControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ShapeDemoldControl Parameters ---------- name A String specifying the geometric restriction repository key. pullDirection A VertexArray object of length 2 specifying the demold pull direction. Instead of through a ConstrainedSketchVertex, each point might be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. collisionCheckRegion The SymbolicConstant DEMOLD_REGION or a Region object specifying the collision check region. If the value is DEMOLD_REGION, then the value of *region* is used as both the demold region and the collision check region. The default value is DEMOLD_REGION. csys None or a DatumCsys object specifying the local coordinate system of the *pullDirection*. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int indicating the identifier of the DatumCsys. The default value is None. drawAngle A Float specifying the draw angle. The default value is 0.0. mainPointDetermination A SymbolicConstant specifying the rule for assigning point priority. Possible values are MAXIMUM and MINIMUM. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. undercutTolerance A Float specifying the undercut tolerance. The default value is 0.0. Returns ------- A ShapeDemoldControl object. """ self.geometricRestrictions[name] = geometricRestriction = ShapeDemoldControl(name, pullDirection, region, collisionCheckRegion, csys, drawAngle, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3, undercutTolerance) return geometricRestriction
[docs] def ShapeMemberSize(self, name: str, region: Region, maxThickness: float = 0, minThickness: float = 0, sizeRestriction: SymbolicConstant = MINIMUM, assignNodeGroupRegion: str = OFF, nodeGroupRegion: str = '') -> ShapeMemberSize: """This method creates a ShapeMemberSize object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ShapeMemberSize Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. maxThickness A Float specifying the maximum thickness. The default value is 0.0. minThickness A Float specifying the minimum thickness. The default value is 0.0. sizeRestriction A SymbolicConstant specifying whether to restrict the minimum or maximum thickness. Possible values are MAXIMUM and MINIMUM. The default value is MINIMUM. assignNodeGroupRegion A bool specifying whether to use the node group region. The default value is OFF. nodeGroupRegion A Node Region object specifying the check node group. Returns ------- A ShapeMemberSize object. """ self.geometricRestrictions[name] = geometricRestriction = ShapeMemberSize(name, region, maxThickness, minThickness, sizeRestriction, assignNodeGroupRegion, nodeGroupRegion) return geometricRestriction
[docs] def ShapePlanarSymmetry(self, name: str, clientDirection: tuple, region: Region, allowNonSymmetricMesh: Boolean = TRUE, csys: int = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0) -> ShapePlanarSymmetry: """This method creates a ShapePlanarSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ShapePlanarSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the vector positioned at the *csys* origin that is normal to the symmetry plane. Instead of through a ConstrainedSketchVertex, each point may be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. allowNonSymmetricMesh A Boolean specifying whether to allow a nonsymmetric mesh for this geometric restriction. The default value is TRUE. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for determining the main node. Possible values are MAXIMUM and MINIMUM. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. Returns ------- A ShapePlanarSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = ShapePlanarSymmetry(name, clientDirection, region, allowNonSymmetricMesh, csys, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3) return geometricRestriction
[docs] def ShapePointSymmetry(self, name: str, region: Region, csys: int = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0) -> ShapePointSymmetry: """This method creates a ShapePointSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ShapePointSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the symmetry point represented as the origin of a local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for determining the main node. Possible values are MAXIMUM and MINIMUM. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. Returns ------- A ShapePointSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = ShapePointSymmetry(name, region, csys, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3) return geometricRestriction
[docs] def ShapeRotationalSymmetry(self, name: str, clientDirection: tuple, region: Region, allowNonSymmetricMesh: Boolean = TRUE, angle: float = 0, csys: int = None, mainPoint: str = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, startPoint: float = None, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0) -> ShapeRotationalSymmetry: """This method creates a ShapeRotationalSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].ShapeRotationalSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the vector positioned at the *csys* origin, used as the axis of symmetry. Instead of through a ConstrainedSketchVertex, each point might be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. allowNonSymmetricMesh A Boolean specifying whether to allow a nonsymmetric mesh for this geometric restriction. The default value is TRUE. angle A Float specifying the segment size of the repeating pattern in degrees. If the *angle* value is 0, no repeating pattern is created. The default value is 0.0. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. mainPoint None or a Region object specifying the main point used when *mainPointDetermination* is SPECIFY. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for determining the main node. Possible values are MAXIMUM, MINIMUM, and SPECIFY. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. startPoint A tuple of Floats representing the coordinates of a start point of the rotational symmetry. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. Returns ------- A ShapeRotationalSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = ShapeRotationalSymmetry(name, clientDirection, region, allowNonSymmetricMesh, angle, csys, mainPoint, mainPointDetermination, presumeFeasibleRegionAtStart, startPoint, tolerance1, tolerance2, tolerance3) return geometricRestriction
[docs] def SizingClusterAreas(self, name: str, regions: tuple) -> SizingClusterAreas: """This method creates a SizingClusterAreas object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingClusterAreas Parameters ---------- name A String specifying the geometric restriction repository key. regions Tuple of Region objects specifying the regions to which the geometric restriction is applied. Returns ------- A SizingClusterAreas object. """ self.geometricRestrictions[name] = geometricRestriction = SizingClusterAreas(name, regions) return geometricRestriction
[docs] def SizingCyclicSymmetry(self, name: str, region: Region, translation: float, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> SizingCyclicSymmetry: """This method creates a SizingCyclicSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingCyclicSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. translation A Float specifying the translation distance. axis A SymbolicConstant specifying the translation direction defined along an axis positioned at the *csys* origin. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A SizingCyclicSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = SizingCyclicSymmetry(name, region, translation, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def SizingFrozenArea(self, name: str, region: Region) -> SizingFrozenArea: """This method creates a SizingFrozenArea object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingFrozenArea Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. Returns ------- A SizingFrozenArea object. """ self.geometricRestrictions[name] = geometricRestriction = SizingFrozenArea(name, region) return geometricRestriction
[docs] def SizingMemberSize(self, name: str, region: Region, minWidth: float) -> SizingMemberSize: """This method creates a SizingMemberSize object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingMemberSize Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. minWidth A Float specifying the min width. Returns ------- Raises ------ """ self.geometricRestrictions[name] = geometricRestriction = SizingMemberSize(name, region, minWidth) return geometricRestriction
[docs] def SizingPlanarSymmetry(self, name: str, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> SizingPlanarSymmetry: """This method creates a SizingPlanarSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingPlanarSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A SizingPlanarSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = SizingPlanarSymmetry(name, region, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def SizingPointSymmetry(self, name: str, region: Region, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> SizingPointSymmetry: """This method creates a SizingPointSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingPointSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. csys None or a DatumCsys object specifying the position of the symmetry point defined as the origin of a local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A SizingPointSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = SizingPointSymmetry(name, region, csys, ignoreFrozenArea) return geometricRestriction
[docs] def SizingRotationalSymmetry(self, name: str, angle: float, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> SizingRotationalSymmetry: """This method creates a SizingRotationalSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SizingRotationalSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. angle A Float specifying the repeating segment size, an angle in degrees. region A Region object specifying the region to which the geometric restriction is applied. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A SizingRotationalSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = SizingRotationalSymmetry(name, angle, region, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def SlideRegionControl(self, name: str, clientDirection: tuple, region: Region, approach: SymbolicConstant = FREE_FORM, csys: int = None, freeFormRegion: str = None, presumeFeasibleRegionAtStart: Boolean = ON, revolvedRegion: str = None, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0) -> SlideRegionControl: """This method creates a SlideRegionControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].SlideRegionControl Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the axis of revolution. Instead of through a ConstrainedSketchVertex, each point may be specified through a tuple of coordinates. This is used when *approach* is TURN. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. approach A SymbolicConstant specifying the restriction approach. The SymbolicConstant FREE_FORM indicates a free-form slide region, and the SymbolicConstant TURN indicates that the restriction should conserve a turnable surface. Possible values are FREE_FORM and TURN. The default value is FREE_FORM. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. This is used when *approach* is TURN. The default value is None. freeFormRegion None or a Region object specifying the free-form region. This is used when *approach* is FREE_FORM. The default value is None. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. revolvedRegion None or a Region object specifying the region to revolve into a slide region. This is used when *approach* is TURN. The default value is None. tolerance1 A Float specifying the geometric tolerance in the 1-direction. This is used when *approach* is TURN. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. This is used when *approach* is TURN. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. This is used when *approach* is TURN. The default value is 0.01. Returns ------- A SlideRegionControl object. """ self.geometricRestrictions[name] = geometricRestriction = SlideRegionControl(name, clientDirection, region, approach, csys, freeFormRegion, presumeFeasibleRegionAtStart, revolvedRegion, tolerance1, tolerance2, tolerance3) return geometricRestriction
[docs] def StampControl(self, name: str, clientDirection: tuple, region: Region, csys: int = None, drawAngle: float = 0, mainPoint: str = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0, undercutTolerance: float = 0) -> StampControl: """This method creates a StampControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].StampControl Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the stamping direction. Instead of through a ConstrainedSketchVertex, each point may be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. drawAngle A Float specifying the draw angle. The default value is 0.0. mainPoint None or a Region object specifying the main point used when *mainPointDetermination* is SPECIFY. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for assigning point priority. Possible values are MAXIMUM, MINIMUM, and SPECIFY. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. undercutTolerance A Float specifying the undercut tolerance. The default value is 0.0. Returns ------- A StampControl object. """ self.geometricRestrictions[name] = geometricRestriction = StampControl(name, clientDirection, region, csys, drawAngle, mainPoint, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3, undercutTolerance) return geometricRestriction
[docs] def TopologyCyclicSymmetry(self, name: str, region: Region, translation: float, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> TopologyCyclicSymmetry: """This method creates a TopologyCyclicSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyCyclicSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. translation A Float specifying the translation distance. axis A SymbolicConstant specifying the translation direction defined along an axis positioned at the *csys* origin. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A TopologyCyclicSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyCyclicSymmetry(name, region, translation, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def TopologyDemoldControl(self, name: str, region: Region, csys: int = None, draftAngle: float = 0, collisionCheckRegion: SymbolicConstant = DEMOLD_REGION, pointRegion: Region = Region(), pullDirection: tuple = (), technique: SymbolicConstant = AUTO) -> TopologyDemoldControl: """This method creates a TopologyDemoldControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyDemoldControl Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system of the *pullDirection*. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int indicating the identifier of the DatumCsys. The default value is None. draftAngle A Float specifying the draft angle. The default value is 0.0. collisionCheckRegion The SymbolicConstant DEMOLD_REGION or a Region object specifying the collision check region. If the value is DEMOLD_REGION, then the value of *region* is used as both the demold region and the collision check region. The default value is DEMOLD_REGION. pointRegion A Region object specifying the point on a plane perpendicular to the pull direction, used to specify the central plane when *technique* is POINT. pullDirection A VertexArray object of length 2 specifying the demold pull direction. Instead of through a ConstrainedSketchVertex, each point may be specified through a tuple of coordinates. technique A SymbolicConstant specifying the demold technique. Possible values are AUTO, AUTO_TIGHT, POINT, SURFACE, and STAMP. The default value is AUTO. Returns ------- A TopologyDemoldControl object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyDemoldControl(name, region, csys, draftAngle, collisionCheckRegion, pointRegion, pullDirection, technique) return geometricRestriction
[docs] def TopologyMemberSize(self, name: str, region: Region, maxThickness: float = 0, minThickness: float = 0, separation: float = 0, sizeRestriction: SymbolicConstant = MINIMUM) -> TopologyMemberSize: """This method creates a TopologyMemberSize object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyMemberSize Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. maxThickness A Float specifying the maximum thickness. The default value is 0.0. minThickness A Float specifying the minimum thickness. The default value is 0.0. separation A Float specifying the minimum gap. The default value is 0.0. sizeRestriction A SymbolicConstant specifying whether to restrict the minimum or maximum thickness or an envelope of both. Possible values are ENVELOPE, MAXIMUM, and MINIMUM. The default value is MINIMUM. Returns ------- A TopologyMemberSize object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyMemberSize(name, region, maxThickness, minThickness, separation, sizeRestriction) return geometricRestriction
[docs] def TopologyMillingControl(self, name: str, millingDirections: tuple, region: Region, csys: int = None, millingCheckRegion: SymbolicConstant = MILLING_REGION, radius: float = None) -> TopologyMillingControl: """This method creates a TopologyMillingControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyMillingControl Parameters ---------- name A String specifying the geometric restriction repository key. millingDirections A tuple of VertexArray objects of length 2 specifying the milling directions. Each point can be specified through a tuple of coordinates instead of through a ConstrainedSketchVertex. region A Region object specifying the region to which the geometric restriction is applied. csys None or a DatumCsys object specifying the local coordinate system of the *millingDirections*. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int indicating the identifier of the DatumCsys. The default value is None. millingCheckRegion The SymbolicConstant MILLING_REGION or a Region object specifying the milling check region. If the value is MILLING_REGION, the value of *region* is used as both the milling control region and the milling check region. The default value is MILLING_REGION. radius A Float specifying the radius for the collision check during the removal of the elements for the milling criteria. Returns ------- A TopologyMillingControl object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyMillingControl(name, millingDirections, region, csys, millingCheckRegion, radius) return geometricRestriction
[docs] def TopologyOverhangControl(self, name: str, pullDirection: tuple, region: Region, csys: int = None, draftAngle: float = 45, overhangCheckRegion: SymbolicConstant = OVERHANG_REGION, pointRegion: Region = Region(), radius: float = None, technique: SymbolicConstant = AUTO) -> TopologyOverhangControl: """This method creates a TopologyOverhangControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyOverhangControl Parameters ---------- name A String specifying the geometric restriction repository key. pullDirection A VertexArray object of length 2 specifying the overhang control print direction. Instead of through a ConstrainedSketchVertex, each point can be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. csys None or a DatumCsys object specifying the local coordinate system of the *pullDirection*. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int indicating the identifier of the DatumCsys. The default value is None. draftAngle A Float specifying the overhang angle. The default value is 45.0. overhangCheckRegion The SymbolicConstant OVERHANG_REGION or a Region object specifying the overhang check region. If the value is OVERHANG_REGION, the value of *region* is used as both the overhang control region and the overhang check region. The default value is OVERHANG_REGION. pointRegion A Region object specifying the point on a plane perpendicular to the *pullDirection* that is used to specify the base plane when *technique* is POINT. radius A Float specifying the radius to define the size of the cones that are used in the internal check for the overhang criteria. technique A SymbolicConstant specifying the overhang control technique used to define the base plane. Possible values are AUTO, POINT, and NONE. The default value is AUTO. Returns ------- A TopologyOverhangControl object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyOverhangControl(name, pullDirection, region, csys, draftAngle, overhangCheckRegion, pointRegion, radius, technique) return geometricRestriction
[docs] def TopologyPlanarSymmetry(self, name: str, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> TopologyPlanarSymmetry: """This method creates a TopologyPlanarSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyPlanarSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A TopologyPlanarSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyPlanarSymmetry(name, region, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def TopologyPointSymmetry(self, name: str, region: Region, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> TopologyPointSymmetry: """This method creates a TopologyPointSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyPointSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the position of the symmetry point defined as the origin of a local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A TopologyPointSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyPointSymmetry(name, region, csys, ignoreFrozenArea) return geometricRestriction
[docs] def TopologyRotationalSymmetry(self, name: str, angle: float, region: Region, axis: SymbolicConstant = AXIS_1, csys: int = None, ignoreFrozenArea: Boolean = OFF) -> TopologyRotationalSymmetry: """This method creates a TopologyRotationalSymmetry object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TopologyRotationalSymmetry Parameters ---------- name A String specifying the geometric restriction repository key. angle A Float specifying the repeating segment size, an angle in degrees. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. axis A SymbolicConstant specifying the axis of symmetry. Possible values are AXIS_1, AXIS_2, and AXIS_3. The default value is AXIS_1. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. ignoreFrozenArea A Boolean specifying whether to ignore frozen areas. The default value is OFF. Returns ------- A TopologyRotationalSymmetry object. """ self.geometricRestrictions[name] = geometricRestriction = TopologyRotationalSymmetry(name, angle, region, axis, csys, ignoreFrozenArea) return geometricRestriction
[docs] def TurnControl(self, name: str, clientDirection: tuple, region: Region, csys: int = None, mainPoint: str = None, mainPointDetermination: SymbolicConstant = MAXIMUM, presumeFeasibleRegionAtStart: Boolean = ON, tolerance1: float = 0, tolerance2: float = 0, tolerance3: float = 0) -> TurnControl: """This method creates a TurnControl object. Notes ----- This function can be accessed by: .. code-block:: python mdb.models[name].optimizationTasks[name].TurnControl Parameters ---------- name A String specifying the geometric restriction repository key. clientDirection A VertexArray object of length 2 specifying the direction of the rotation axis as a vector positioned at the *csys* origin. Instead of through a ConstrainedSketchVertex, each point might be specified through a tuple of coordinates. region A Region object specifying the region to which the geometric restriction is applied. When used with a TopologyTask, there is no default value. When used with a ShapeTask, the default value is MODEL. csys None or a DatumCsys object specifying the local coordinate system. If *csys*=None, the global coordinate system is used. When this member is queried, it returns an Int. The default value is None. mainPoint None or a Region object specifying the main point used when *mainPointDetermination* is SPECIFY. The default value is None. mainPointDetermination A SymbolicConstant specifying the rule for assigning point priority. Possible values are MAXIMUM, MINIMUM, and SPECIFY. The default value is MAXIMUM. presumeFeasibleRegionAtStart A Boolean specifying whether to ignore the geometric restriction in the first design cycle. The default value is ON. tolerance1 A Float specifying the geometric tolerance in the 1-direction. The default value is 0.01. tolerance2 A Float specifying the geometric tolerance in the 2-direction. The default value is 0.01. tolerance3 A Float specifying the geometric tolerance in the 3-direction. The default value is 0.01. Returns ------- A TurnControl object. """ self.geometricRestrictions[name] = geometricRestriction = TurnControl(name, clientDirection, region, csys, mainPoint, mainPointDetermination, presumeFeasibleRegionAtStart, tolerance1, tolerance2, tolerance3) return geometricRestriction