pub struct DofMap { /* private fields */ }Implementations§
Source§impl DofMap
impl DofMap
pub fn build(model: &Model) -> Self
pub fn n_active(&self) -> usize
pub fn active(&self, g: GlobalDof) -> Option<u32>
Sourcepub fn expand_to_nodes(&self, u_free: &[f64], n_nodes: usize) -> Vec<[f64; 6]>
pub fn expand_to_nodes(&self, u_free: &[f64], n_nodes: usize) -> Vec<[f64; 6]>
自由 DOF 空間のベクトル(active 添字順。従属自由度は expand_u 済み)を
節点×6 成分の配列へ展開する。拘束・非構造自由度は 0 のまま。
静的解析の変位・時刻歴の節点変位・固有モード形状の散布で同一の展開が 必要になるため、単一実装としてここに置く(各ソルバでの手書きコピーの 再発防止)。
pub fn global(&self, a: u32) -> GlobalDof
Sourcepub fn panel_dof(&self, node_idx: usize, d: usize) -> Option<u32>
pub fn panel_dof(&self, node_idx: usize, d: usize) -> Option<u32>
節点 node_idx の仕口パネル自由度(d = 0 が γX、1 が γY)の独立自由度番号。
パネルを持たない節点・範囲外は None。
Sourcepub fn has_panel_dof(&self, node_idx: usize) -> bool
pub fn has_panel_dof(&self, node_idx: usize) -> bool
節点 node_idx に仕口パネル自由度が払い出されているか。
Sourcepub fn is_node_dof(&self, g: GlobalDof) -> bool
pub fn is_node_dof(&self, g: GlobalDof) -> bool
グローバル自由度 g が標準自由度(節点 × 6)の範囲にあるか。
false は仕口パネルの追加自由度を指す(g / DOF_PER_NODE で節点番号へ
換算してはならない)。
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DofMap
impl RefUnwindSafe for DofMap
impl Send for DofMap
impl Sync for DofMap
impl Unpin for DofMap
impl UnsafeUnpin for DofMap
impl UnwindSafe for DofMap
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more