pub enum SectionShape {
Show 17 variants
SteelH {
height: f64,
width: f64,
web_thick: f64,
flange_thick: f64,
},
SteelBox {
height: f64,
width: f64,
thick: f64,
corner_r: f64,
},
SteelAngle {
leg_a: f64,
leg_b: f64,
thick: f64,
},
SteelChannel {
height: f64,
width: f64,
web_thick: f64,
flange_thick: f64,
},
SteelTee {
height: f64,
width: f64,
web_thick: f64,
flange_thick: f64,
},
SteelPipe {
outer_dia: f64,
thick: f64,
},
SteelFlatBar {
width: f64,
thick: f64,
},
SteelRoundBar {
dia: f64,
},
SteelBuiltH {
height: f64,
upper_width: f64,
upper_thick: f64,
lower_width: f64,
lower_thick: f64,
web_thick: f64,
},
SteelLipChannel {
height: f64,
width: f64,
lip: f64,
thick: f64,
},
RcRect {
b: f64,
d: f64,
rebar: RcRebar,
},
RcCircle {
d: f64,
rebar: RcRebar,
},
SrcRect {
b: f64,
d: f64,
rebar: RcRebar,
steel_height: f64,
steel_width: f64,
steel_web_thick: f64,
steel_flange_thick: f64,
},
CftBox {
height: f64,
width: f64,
thick: f64,
},
CftPipe {
outer_dia: f64,
thick: f64,
},
RcWall {
thickness: f64,
ps: f64,
},
RcSlab {
thickness: f64,
},
}Expand description
Parametric section shape definition.
Each variant carries the minimal parameters needed to define the geometry.
Call to_section() to compute the derived section properties (A, Iy, Iz, J, …)
and produce a squid_n_core::Section.
Variants§
SteelH
Steel H‑shape (H形鋼).
SteelBox
Steel rectangular hollow section / box (角形鋼管).
Fields
SteelAngle
Steel L‑angle (山形鋼).
SteelChannel
Steel C‑channel (溝形鋼).
SteelTee
Steel T‑shape (T形鋼).
SteelPipe
Steel round pipe (鋼管).
SteelFlatBar
Steel flat bar / plate (平鋼・鋼板). 中実矩形。
width: 幅 B [mm](Z 方向)、thick: 板厚 t [mm](Y 方向=せい)。
断面性能は中実矩形として算定する(配筋はない)。部材のせい/幅の向きは
局所座標(ref_vector)で与える。薄板だが幅厚比検定の対象外(板要素ではない)。
SteelRoundBar
Steel solid round bar (中実丸鋼).
dia: 直径 D [mm]。断面性能は中実円として算定する。
SteelBuiltH
Steel welded built-up H with unequal flanges (非対称組立 H 形鋼). StbSecBuild-H。
上下フランジの幅・厚が異なる溶接組立断面。height: せい H(外〜外)、
upper_width/upper_thick: 上フランジ、lower_width/lower_thick: 下フランジ、
web_thick: ウェブ厚。上下フランジ+ウェブの矩形分解+平行軸で断面性能を算定する
(図心は Y 方向に偏心。左右対称)。上下同一寸法なら通常の SteelH と等価。
Fields
SteelLipChannel
Steel cold-formed lipped channel (リップ溝形鋼). StbSecRoll-LipC。
height: せい H [mm](Y 方向)、width: フランジ幅 B [mm](Z 方向。ウェブ外面〜
フランジ先端)、lip: リップ長 C [mm](Y 方向)、thick: 板厚 t [mm](全要素一様)。
薄肉開断面としてウェブ・上下フランジ・上下リップの矩形分解で断面性能を算定する
(図心は Z 方向に偏心。冷間成形材の有効断面・局部座屈は別途検討)。
RcRect
Reinforced concrete rectangle (RC 矩形).
RcCircle
Reinforced concrete circle column (RC 円形).
SrcRect
SRC 矩形断面(RC 矩形 + 内蔵 H 形鉄骨、SRC 規準 1987)。
内蔵鉄骨の鋼種・コンクリート強度・主筋の材質は、いずれも断面が材料として
持つ(crate::model::Section の steel_material・material・rebar_material)。
解析用断面性能(to_section)は、コンクリート断面にヤング係数比
N_S_EQ(=15、暫定既定)による鉄骨の等価換算剛性を加えて算定する。
断面積は質量算定への影響を避けるためコンクリート全断面 b·d とする。
Fields
CftBox
CFT 角形(角形鋼管 + 充填コンクリート)。
解析用断面性能は鋼管部分のみ(充填コンクリートの剛性は暫定的に無視、
剛性計算編での複合換算は今後の課題)。検定では Material.fc の
充填コンクリート強度を用いる。
CftPipe
CFT 円形(円形鋼管 + 充填コンクリート)。扱いは CftBox と同じ。
RcWall
RC 耐震壁(壁エレメント用)。
thickness: 壁板厚 [mm]、ps: 壁板の直交する各方向のせん断補強筋比の
うち小さい方(小数。例 0.0025)。壁の平面寸法は要素の節点座標から得る
ため形状には持たない。to_section の断面性能は名目値(壁は暫定的に
等価梁でモデル化されており、実剛性の評価は要素実装側の課題)。
RcSlab
RC スラブ(床)。
thickness: 板厚 [mm]。スラブの平面形状は境界節点から得るため形状には
持たない。スラブは解析部材ではなく荷重を分配する面のため、断面性能
(A・I・As)は幅 1 m の帯としての名目値であり、剛性計算には用いない。
配筋は持たない。スラブ配筋の設計は板厚とかぶり厚から算定しており
(design_slab_oneway)、断面にも配筋を置くと入力の持ち主が二重になる。
Implementations§
Source§impl SectionShape
impl SectionShape
Sourcepub fn to_section(&self, id: SectionId, name: String) -> Section
pub fn to_section(&self, id: SectionId, name: String) -> Section
Build a fully-populated squid_n_core::Section from the shape parameters.
id and name must be supplied by the caller; all section properties
are computed automatically. 階(Section::floor)は形状から決まらないため
None とし、必要な呼び出し側(ST-Bridge 取り込み・断面形状の変更)が
生成後に設定する。
Source§impl SectionShape
impl SectionShape
Sourcepub fn src_equivalent_props(&self, ec: f64, nu_c: f64) -> Option<CompositeProps>
pub fn src_equivalent_props(&self, ec: f64, nu_c: f64) -> Option<CompositeProps>
SRC 断面の等価断面性能を、実際のヤング係数比 ns=Es/Ec から算定する (各種合成構造設計指針: An=rcAn+sAn·(ns−1)、Ie=rcIe+sIe·(ns−1)、 As=rcAs+sAs·(ngs−1)、J=cJ+(sG/cG)·sJ)。
ec/nu_c: 要素材料(コンクリート)のヤング係数・ポアソン比。
鉄骨は Es=E_STEEL・νs=0.3 とする。ngs=ns·(1+νc)/(1+νs)。
SrcRect 以外、または ec≤0 では None(呼び出し側は to_section の
既定値=N_S_EQ 固定へフォールバックする)。
Sourcepub fn cft_equivalent_props(
&self,
es: f64,
nu_s: f64,
fc: f64,
) -> Option<CompositeProps>
pub fn cft_equivalent_props( &self, es: f64, nu_s: f64, fc: f64, ) -> Option<CompositeProps>
CFT 断面(CftBox/CftPipe)の等価断面性能を鋼管基準で算定する (各種合成構造設計指針: SRC 柱に準じる累加(CFT もこれに準じる)を鋼基準の 1/n 換算で適用。J は S 柱の J=(sG/cG)·sJ+cJ を鋼基準 J=sJ+cJ/ngs に換算)。
es/nu_s: 要素材料(鋼管)のヤング係数・ポアソン比、
fc: 充填コンクリート強度(Material.fc)。
Ec は concrete_young_modulus(γ=23)・νc=0.2 とする。
CftBox/CftPipe 以外、または Ec≤0 では None(鋼管のみの既定値へ
フォールバック)。
Source§impl SectionShape
impl SectionShape
Sourcepub fn cft_core_props(&self) -> Option<CftCoreProps>
pub fn cft_core_props(&self) -> Option<CftCoreProps>
CFT 断面(CftBox/CftPipe)の充填コンクリート部分の諸元。
CFT 以外の形状は None。
内法寸法は 0 で下限クランプするため、板厚が過大で内法が消える断面では
area が 0 になる(=充填コンクリートが効かない)。呼び出し側が
「鋼管のみへフォールバックする」か「充填ゼロのまま続行する」かを選べるよう、
ここでは None にせず 0 を返す。
Source§impl SectionShape
impl SectionShape
Sourcepub fn dimension_label(&self) -> String
pub fn dimension_label(&self) -> String
形状と各寸法を表す表記(例 H-500x250x9x16・BD-300x600)。
記号は ASCII のみで、断面の種別が接頭辞から一意に読み取れるようにしている。
円形は用途で記号を分ける(鋼管 P-、中実丸鋼 RB-、RC 円形 RD-)。
SRC は内蔵鉄骨の寸法まで含める(外形が同じで内蔵鉄骨だけが違う断面を
表記で見分けられるようにするため)。
Source§impl SectionShape
impl SectionShape
Sourcepub fn plastic_modulus_strong(&self) -> Option<f64>
pub fn plastic_modulus_strong(&self) -> Option<f64>
鉄骨断面の塑性断面係数 Zp [mm³](強軸)。RC・SRC・CFT・不明形状は None
を返す(鉄骨梁の全塑性モーメント Mp=Zp·σy の算定に用いる。材料力学)。
H・箱・パイプ・中実丸鋼は閉形式、それ以外は矩形分解から等面積軸まわりで
積分する([plastic_modulus_strips])。軸は calc_iy と
同一(山形鋼は図心を通る幾何軸で、主軸ではない。Ze と軸を揃えるため
意図的にこの定義を採る。主軸まわりで扱うには断面相乗モーメント Iyz を
断面データに持たせて二軸連成を解く必要がある)。
Sourcepub fn calc_iy(&self) -> f64
pub fn calc_iy(&self) -> f64
Moment of inertia about the local y‑axis [mm⁴] (strong axis for beams).
Sourcepub fn calc_iz(&self) -> f64
pub fn calc_iz(&self) -> f64
Moment of inertia about the local z‑axis [mm⁴] (weak axis for beams).
Sourcepub fn calc_axial_stiffness_area(&self) -> f64
pub fn calc_axial_stiffness_area(&self) -> f64
軸剛性(EA)算定用の等価断面積 [mm²]。
SRC は各種合成構造設計指針の
An = rcAn + sAn·(ns−1) に従い鉄骨の等価換算断面を累加する
(ns は暫定的に N_S_EQ)。質量算定用の断面積(calc_area は
コンクリート全断面)とは区別して用いること。他形状は calc_area と同値。
Source§impl SectionShape
impl SectionShape
Sourcepub fn rebar(&self) -> Option<&RcRebar>
pub fn rebar(&self) -> Option<&RcRebar>
配筋情報(主筋・せん断補強筋)を持つ形状はその参照を返す。
配筋を持たない形状(鋼断面・CFT・壁)は None。
Sourcepub fn is_concrete_like(&self) -> bool
pub fn is_concrete_like(&self) -> bool
コンクリート系(RC / SRC / CFT)の断面形状か。
断面耐力(曲げひび割れ \(M_c\)・曲げ降伏 \(M_y\)・せん断終局 \(Q_{su}\))の
算定にコンクリート強度 \(F_c\) を要する形状を真とする。既定履歴則の判定
(squid_n_element::factory::resolve_member_hysteresis)と、非線形解析の
入力チェック(squid_n_element::factory::nonlinear_input_issues)が共有する。
Trait Implementations§
Source§impl Clone for SectionShape
impl Clone for SectionShape
Source§fn clone(&self) -> SectionShape
fn clone(&self) -> SectionShape
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SectionShape
impl Debug for SectionShape
Source§impl<'de> Deserialize<'de> for SectionShape
impl<'de> Deserialize<'de> for SectionShape
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for SectionShape
impl PartialEq for SectionShape
Source§fn eq(&self, other: &SectionShape) -> bool
fn eq(&self, other: &SectionShape) -> bool
self and other values to be equal, and is used by ==.