Click or drag to resize

FactoryAlgorithmsOptiCroSec Method

Optimize the cross section of beams and shells for stress and maximum deflection. It is an iterative procedure. Be aware of the fact that NII forces are not updated.

Namespace:  KarambaCommon.Factories
Assembly:  KarambaCommon (in KarambaCommon.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax
public virtual Model OptiCroSec(
	Model model,
	IReadOnlyList<CroSec> crosecs,
	out List<double> maxDisplacements,
	out List<double> compliances,
	out string message,
	int ulsIter = 5,
	double targetUtil = 1,
	int slsIter = 5,
	double maxDeformLimit = -1,
	int nSamples = 3,
	bool elastDesign = true,
	bool bisectionSearch = true,
	List<string> elemIds = null,
	List<string> elemGrpIds = null,
	double gammaM0 = 1,
	double gammaM1 = 1
)

Parameters

model
Type: Karamba.ModelsModel
Model for which cross sections shall be optimized
crosecs
Type: System.Collections.GenericIReadOnlyListCroSec
Sorted list of cross sections to select from for optimization. Cross sections coming first are first tested for appropriateness.
maxDisplacements
Type: System.Collections.GenericListDouble
Maximum displacement in each load-case after optimization
compliances
Type: System.Collections.GenericListDouble
Resulting compliance (i.e. internal elastic energy) for each load-case
message
Type: SystemString
Information regarding the optimization run
ulsIter (Optional)
Type: SystemInt32
Number of iterations for the ultimate limit state
targetUtil (Optional)
Type: SystemDouble
Target value for the element utilization
slsIter (Optional)
Type: SystemInt32
Number of iterations for the serviceability limit state (limiting maximum deformation)
maxDeformLimit (Optional)
Type: SystemDouble
Limit for maximum deformation not to be surpassed by optimized structure under any load-cases. in case of negative values no displacement limits are checked.
nSamples (Optional)
Type: SystemInt32
Number of points along the beam axis for which the cross section design is to be checked. The minimum is two for beams. For shells the minimum is one. Larger values than one for shells have currently no impact.
elastDesign (Optional)
Type: SystemBoolean
'true' if cross section design should be elastic, otherwise plastic design is performed
bisectionSearch (Optional)
Type: SystemBoolean
If 'true' then sufficient cross sections are searched for using a bisection algorithm
elemIds (Optional)
Type: System.Collections.GenericListString
Identifiers of elements to be optimized. If null all elements are optimized
elemGrpIds (Optional)
Type: System.Collections.GenericListString
Identifiers of element sets which shall have identical cross sections. In case of shells all faces of the shell have the same height
gammaM0 (Optional)
Type: SystemDouble
Safety factor on the material if buckling does not govern the cross section design
gammaM1 (Optional)
Type: SystemDouble
Safety factor on the material if buckling govers the cross section design

Return Value

Type: Model
Model with optimized cross sections
See Also