|
OptiCroSecEC3solve Method
|
optimize the cross section of beams and shells for stress and maximum deflection
Namespace:
Karamba.Algorithms
Assembly:
KarambaCommon (in KarambaCommon.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax public static void solve(
Model in_model,
int n_samples,
bool elast_design,
int uls_iter,
int sls_iter,
double max_deform,
double target_util,
List<string> elem_ids,
List<string> elem_grp_ids,
IReadOnlyList<CroSec> in_crosec,
bool bisection_search,
double gamma_m0,
double gamma_m1,
out List<double> max_displacements,
out List<double> compliances,
out string message,
out Model model
)
Public Shared Sub solve (
in_model As Model,
n_samples As Integer,
elast_design As Boolean,
uls_iter As Integer,
sls_iter As Integer,
max_deform As Double,
target_util As Double,
elem_ids As List(Of String),
elem_grp_ids As List(Of String),
in_crosec As IReadOnlyList(Of CroSec),
bisection_search As Boolean,
gamma_m0 As Double,
gamma_m1 As Double,
<OutAttribute> ByRef max_displacements As List(Of Double),
<OutAttribute> ByRef compliances As List(Of Double),
<OutAttribute> ByRef message As String,
<OutAttribute> ByRef model As Model
)
public:
static void solve(
Model^ in_model,
int n_samples,
bool elast_design,
int uls_iter,
int sls_iter,
double max_deform,
double target_util,
List<String^>^ elem_ids,
List<String^>^ elem_grp_ids,
IReadOnlyList<CroSec^>^ in_crosec,
bool bisection_search,
double gamma_m0,
double gamma_m1,
[OutAttribute] List<double>^% max_displacements,
[OutAttribute] List<double>^% compliances,
[OutAttribute] String^% message,
[OutAttribute] Model^% model
)
static member solve :
in_model : Model *
n_samples : int *
elast_design : bool *
uls_iter : int *
sls_iter : int *
max_deform : float *
target_util : float *
elem_ids : List<string> *
elem_grp_ids : List<string> *
in_crosec : IReadOnlyList<CroSec> *
bisection_search : bool *
gamma_m0 : float *
gamma_m1 : float *
max_displacements : List<float> byref *
compliances : List<float> byref *
message : string byref *
model : Model byref -> unit
Parameters
- in_model
- Type: Karamba.ModelsModel
model for which cross sections shall be optimized - n_samples
- 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. - elast_design
- Type: SystemBoolean
true if cross section design should be elastic, otherwise plastic design is performed - uls_iter
- Type: SystemInt32
number of iterations for the ultimate limit state - sls_iter
- Type: SystemInt32
number of iterations for the serviceability limit state (limiting maximum deformation) - max_deform
- Type: SystemDouble
maximum deformation not to be surpassed by optimized structure under any loadcases - target_util
- Type: SystemDouble
target value for the element utilization - elem_ids
- Type: System.Collections.GenericListString
identifiers of elements to be optimized. If empty all elements are optimized. - elem_grp_ids
- 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. - in_crosec
- Type: System.Collections.GenericIReadOnlyListCroSec
sorted list of cross sections to select from for optimization. Cross sections coming first are first tested for appropriateness. - bisection_search
- Type: SystemBoolean
if true then sufficient cross sections are searched for using a bisection algorithm - gamma_m0
- Type: SystemDouble
Safety factor on the material if buckling does not govern the cross section design - gamma_m1
- Type: SystemDouble
Safety factor on the material if buckling govers the cross section design - max_displacements
- 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 - model
- Type: Karamba.ModelsModel
model with optimized cross sections
See Also