Model
Namespace: FEMur.Models
解析モデル。節点・要素・支持条件・荷重と、解析結果を保持する。
public sealed class Model : IEquatable<Model>
Inheritance: System.Object → FEMur.Models.Model
Implements: System.IEquatable<FEMur.Models.Model>
Constructors
| Name | Signature | Summary |
|---|---|---|
Model() | public Model() | — |
Model(List<Node>, List<ElementBase>, List<Support>, List<Load>, List<Joint>?, double) | public Model(List<Node> nodes, List<ElementBase> elements, List<Support> supports, List<Load> loads, List<Joint>? joints = null, double nodeTolerance = 0.001) | — |
Model(List<Node>, List<ElementBase>, List<Support>, List<Load>, List<Joint>?, ModelAssemblyOptions) | public Model(List<Node> nodes, List<ElementBase> elements, List<Support> supports, List<Load> loads, List<Joint>? joints, ModelAssemblyOptions options) | モデリング設定を指定してモデルを構築する(#146 Phase 3)。 options の交差計算トグルはいずれも既定 false なので、 何も設定しなければ許容差だけを渡す既存コンストラクタと同じモデルが構築される。 |
Model(List<Node>, List<ElementBase>, List<Support>, List<SurfaceSpring>?, List<Load>, List<Joint>?, ModelAssemblyOptions) | public Model(List<Node> nodes, List<ElementBase> elements, List<Support> supports, List<SurfaceSpring>? surfaceSprings, List<Load> loads, List<Joint>? joints, ModelAssemblyOptions options) | 面ばね(SurfaceSpring)を含めてモデルを構築する。 既存コンストラクタのバイナリ互換を保つため、省略可能引数の追加ではなく オーバーロードとして用意している。 |
Model(List<Node>, List<ElementBase>, List<Support>, List<SurfaceSpring>?, List<DofCoupling>?, List<Load>, List<Joint>?, ModelAssemblyOptions) | public Model(List<Node> nodes, List<ElementBase> elements, List<Support> supports, List<SurfaceSpring>? surfaceSprings, List<DofCoupling>? dofCouplings, List<Load> loads, List<Joint>? joints, ModelAssemblyOptions options) | 従属自由度(DofCoupling)を含めてモデルを構築する。 リモート点の節点生成が検証の中で必要なため、構築後に追加できない。 |
Model(List<Node>, List<ElementBase>, List<Support>, List<SurfaceSpring>?, List<Load>, List<Joint>?, double) | public Model(List<Node> nodes, List<ElementBase> elements, List<Support> supports, List<SurfaceSpring>? surfaceSprings, List<Load> loads, List<Joint>? joints = null, double nodeTolerance = 0.001) | 面ばねを含めてモデルを構築する(許容差のみを指定する簡易版)。 |
Model(Model) | public Model(Model other) | — |
Properties
| Name | Signature | Summary |
|---|---|---|
Nodes | public List<Node> Nodes { get; set; } | — |
Elements | public List<ElementBase> Elements { get; set; } | — |
Supports | public List<Support> Supports { get; set; } | — |
SurfaceSprings | public List<SurfaceSpring> SurfaceSprings { get; set; } | 面ばね(Winkler 弾性床)のリスト。節点支持(Supports)とは 対象も単位も違うため別のリストで持つ。Grasshopper では同じ Supports 端子から入り、 AssembleModel が型で振り分ける。 |
Loads | public List<Load> Loads { get; set; } | — |
Joints | public List<Joint> Joints { get; set; } | — |
RigidDiaphragms | public List<RigidDiaphragm> RigidDiaphragms { get; set; } | — |
DofCouplings | public IReadOnlyList<DofCoupling> DofCouplings { get; } | 従属自由度の設定。Grasshopper では Supports 端子から入り、AssembleModel が型で振り分ける。 リモート点の節点は ValidateAndRepairModel が解決するので、コンストラクタで渡す。 |
Results | public Dictionary<string, Result> Results { get; } | — |
EigenResult | public EigenResult? EigenResult { get; } | — |
TimeHistoryResults | public IReadOnlyDictionary<string, TimeHistoryResult> TimeHistoryResults { get; } | — |
Result | public Result? Result { get; } | — |
IsSolved | public bool IsSolved { get; } | — |
IsValidated | public bool IsValidated { get; } | — |
ValidationInfos | public List<string> ValidationInfos { get; } | — |
ValidationWarnings | public List<string> ValidationWarnings { get; } | — |
NodeTolerance | public double NodeTolerance { get; set; } | — |
Methods
| Name | Signature | Summary |
|---|---|---|
DeepCopy() | public Model DeepCopy() | — |
ToString() | public override string ToString() | Returns a string that represents the current object. |
Equals(Model?) | public bool Equals(Model? other) | Indicates whether the current object is equal to another object of the same type. |
Fields
| Name | Signature | Summary |
|---|---|---|
DefaultNodeTolerance | public const double DefaultNodeTolerance = 0.001 | — |