I´m trying to manually customize the EC3 buckling behavior of a large list of Cross-Sections generated from the Cross Section component. However, whereas the alpha EC3 buckling coefficients can be set with Modify CroSec component, I can´t find the way to set the “Product” field:
The CS provided by the Cross-section Range Selector (e.g. for EU country, circular shape and CHS(EN10210-2) shape) are always Product = 2 (i.e. welded).
How would I change this value without writing, editing, and reading a cross-sections table?
Or perhaps the “Product” value is only intended to select alpha coefficients?
Dear @Vigardo,
at the moment (Karamba3D 2.2.0) the only possibility is to use a small script: SetCrossSectionProductType.gh (9.9 KB). In order to make it run you have to go to the component’s context menu and relink the assemblies via ‘Manage Assemblies…’.
–Clemens
Hi Clemens, thanks for keeping this issue in mind! I hope you´ve had a very nice holidays!
Your code partially works. It shows and changes the Product field of the “cs” variable. However, when I try to output it, e.g. into “CS”, an error es dumped in the next Disassemble Cross-section component:
1. Data conversion failed from Goo to CrossSection
Setting the product type has a problem which I did not consider in the first version of the script: In order to get the alpha-values updated one needs to call calculateProperties() on the cross section.
However there is a pitfall: For I- and Box-profiles the product-type is automatically set to ‘welded’ in case that the fillet radius is zero, otherwise it is set to ‘rolled’. In the next service release of Karamba3D 2.2.0 this will change, and a user defined product type will not be overridden.
I´ve been checking the alphas that your code sets. I´m sorry, but I think they are not right. (but I´m not an expert in Eurocode )
Please, correct me if I´m wrong, but according to EN-1993.1.1:2005 (EC3), a cold formed CHS (EN10210-2) (Product = 0 “cold formed”) should use buckling curve “c” (i.e. alphaY = alphaZ = 0.49). However, your code sets alphaYZ values to 0.34 instead.
Hi @Vigardo,
the product variable is used to set the alpha-values in the method calculateProperties() of the cross sections. For RHS it is used to determine the fillet-radius. Setting the alpha-values directly does not change the product-variable.
–Clemens