LoadToMass
Namespace: FEMur.Loads
荷重を質量に変換する設定(MGT の *LOADTOMASS として入出力される) Load を継承しているため、AssembleModel の Loads 入力にそのまま接続可能 GravityLoad と組み合わせて使用: GravityLoad が自重を計算する際に、LoadToMass で指定された荷重ケースの荷重を 追加質量として考慮する
public sealed class LoadToMass : Load
Inheritance: System.Object → FEMur.Loads.Load → FEMur.Loads.LoadToMass
Constructors
| Name | Signature | Summary |
|---|---|---|
LoadToMass() | public LoadToMass() | — |
LoadToMass(List<LoadToMassEntry>, bool, bool, bool, bool, bool, bool, bool, double) | public LoadToMass(List<LoadToMassEntry> entries, bool applyX = true, bool applyY = true, bool applyZ = true, bool bNodal = true, bool bBeam = true, bool bFloor = true, bool bPres = true, double gravity = 9.806) | — |
LoadToMass(LoadToMass) | public LoadToMass(LoadToMass other) | — |
Properties
| Name | Signature | Summary |
|---|---|---|
Entries | public List<LoadToMassEntry> Entries { get; set; } | 変換対象の荷重ケース名と倍率のリスト 例: { ("DL", 1.0), ("LL", 0.5) } |
IsAnalysisSetting | public override bool IsAnalysisSetting { get; } | 荷重ケースに属さない解析設定(ソルバー・MGT の荷重ケース収集から除外される) |
ApplyX | public bool ApplyX { get; set; } | X方向に質量荷重を作用させるか |
ApplyY | public bool ApplyY { get; set; } | Y方向に質量荷重を作用させるか |
ApplyZ | public bool ApplyZ { get; set; } | Z方向に質量荷重を作用させるか |
bNodal | public bool bNodal { get; set; } | 節点荷重を質量に含めるか (bNODAL) |
bBeam | public bool bBeam { get; set; } | 梁荷重を質量に含めるか (bBEAM) |
bFloor | public bool bFloor { get; set; } | 床荷重を質量に含めるか (bFLOOR) |
bPres | public bool bPres { get; set; } | 圧力荷重を質量に含めるか (bPRES) |
Gravity | public double Gravity { get; set; } | 重力加速度 (m/s²)。デフォルト 9.806。 MGT (*LOADTOMASS) 入出力のメタデータであり、解析では使用しない。 解析側は荷重→質量→荷重の往復を同一の重力加速度 (GRAVITY_ACCELERATION)で行うため g は相殺され、 この値が結果に影響することはない(#79) |
Methods
| Name | Signature | Summary |
|---|---|---|
GetDirectionLabel() | public string GetDirectionLabel() | 方向ラベル文字列を取得(例: "XYZ", "XZ", "Z") |
ToString() | public override string ToString() | Returns a string that represents the current object. |
TryBuildEntries(IList<string>?, IList<double>?, out List<LoadToMassEntry>, out string?, out List<string>) | public static bool TryBuildEntries(IList<string>? loadCaseNames, IList<double>? factors, out List<LoadToMassEntry> entries, out string? error, out List<string> warnings) | 荷重ケース名と倍率のリストからエントリを構築する (#157)。 倍率の照合規則: factors が 0 件(null 含む) → 全ケースに 1.0 factors が 1 件 → その値を全ケースへ適用 factors が loadCaseNames と同数 → 元のリストでの位置で対応付ける それ以外 → false を返す Grasshopper の LoadToMass コンポーネントから呼ばれる。FEMurTests は FEMur.GH を 参照していないため、単体テストできるようこの規則をコア側に置いている。 error / warnings は Grasshopper に表示されるため英語で組み立てる。 |
FindDuplicateLoadCaseNames(IEnumerable<LoadToMass>) | public static List<string> FindDuplicateLoadCaseNames(IEnumerable<LoadToMass> loadToMassList) | 複数の LoadToMass(および1つの中)で重複している荷重ケース名を返す (#157)。 静解析と固有値解析の双方から呼ばれるため、警告文の組み立ては呼び出し側に任せる。 |