FactoryAlgorithmsOptiCroSec(Model, IReadOnlyListCroSec, IReadOnlyListDouble, IReadOnlyListDouble, String, Int32, Double, Int32, Double, Int32, Boolean, Boolean, ListString, ListString, Double, Double, Boolean) Method

Note: This API is now obsolete.
Optimize the cross section of beams and shells for stress and maximum deflection. It is an iterative procedure. All load-cases are considered for utilization and displacement.

Definition

Namespace: Karamba.Factories
Assembly: KarambaCommon (in KarambaCommon.dll) Version: 3.0.8.0+eb23a7103f0eca0b6d808121e15fec6899194e15
C#
[ObsoleteAttribute("This method is obsolete. Use a different implementation instead.")]
public virtual Model OptiCroSec(
	Model model,
	IReadOnlyList<CroSec> crosecs,
	out IReadOnlyList<double> maxDisplacements,
	out IReadOnlyList<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,
	bool swayFrame = true
)

Parameters

model  Model
Model for which cross sections shall be optimized.
crosecs  IReadOnlyListCroSec
Sorted list of cross sections to select from for optimization. Cross sections coming first are first tested for appropriateness.
maxDisplacements  IReadOnlyListDouble
Maximum displacement in each load-case after optimization.
compliances  IReadOnlyListDouble
Resulting compliance (i.e. internal elastic energy) for each load-case.
message  String
Information regarding the optimization run.
ulsIter  Int32  (Optional)
Number of iterations for the ultimate limit state.
targetUtil  Double  (Optional)
Target value for the element utilization.
slsIter  Int32  (Optional)
Number of iterations for the serviceability limit state (limiting maximum deformation).
maxDeformLimit  Double  (Optional)
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  Int32  (Optional)
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  Boolean  (Optional)
'true' if cross section design should be elastic, otherwise plastic design is performed.
bisectionSearch  Boolean  (Optional)
If 'true' then sufficient cross sections are searched for using a bisection algorithm.
elemIds  ListString  (Optional)
Identifiers of elements to be optimized. If null all elements are optimized.
elemGrpIds  ListString  (Optional)
Identifiers of element sets which shall have identical cross sections. In case of shells all faces of the shell have the same height.
gammaM0  Double  (Optional)
Safety factor on the material if buckling does not govern the cross section design.
gammaM1  Double  (Optional)
Safety factor on the material if buckling governs the cross section design.
swayFrame  Boolean  (Optional)
flag which indicates when true that buckling involves sideways movement of the structure.

Return Value

Model
Model with optimized cross sections.

See Also