> For the complete documentation index, see [llms.txt](https://manual.karamba3d.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://manual.karamba3d.com/jp/3-konpnentorifarensu/3.2-load/3.2.5-load-case-combinations/3.2.5.1-load-case-combinator.md).

# 3.2.5.1 荷重ケースの組み合わせ

「Load-Case-Combinator」コンポーネントは、組み合わせルールを含む文字列のリストを取り、それらを荷重組み合わせに変換します（図3.2.5.1参照）。名前はそれ以上の置換が不可能になるまで展開されます。

<figure><img src="https://147116332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz9HWyQapP9tu9mJjh5O9%2Fuploads%2Fgit-blob-bab9699b95946d3097594b33e324c9a5a4777be6%2FCapture%20(1).PNG?alt=media" alt=""><figcaption><p>図3.2.5.1.1: 「Load-Combination」コンポーネントによる荷重組み合わせの作成。</p></figcaption></figure>

「**Load**」出力は、「Load-Combinations」オブジェクトで構成され、（他のものとともに）モデルセットアップ時に「Assemble」コンポーネントの「Load」入力に接続できます。そのテキスト表現により、ユーザーは展開されたルールが意図に従っているかを確認できます。荷重組み合わせは名前のアルファベット順にリストされます。

荷重ケースの組み合わせオブジェクトには複数の組み合わせを含めることができ、それらの名前は「**Names**」出力プラグで出力されます。それぞれについて、「**Nums**」出力は各荷重ケースの組み合わせに含まれる荷重ケースの数を提供します。

### 荷重組み合わせルールの構文

荷重ケースの組み合わせを記述する際の構文に関する簡単なガイドは、マウスポインタを「Rules」入力に重ねると表示されます。以下は詳細版です:

* 組み合わせルールは、左側の組み合わせの名前と等号、組み合わせ式で構成されます。
* 組み合わせ名が左側に複数回現れる場合、対応する式はOR関係で組み合わされます。
* 可読性のためにスペースを導入できますが、効果はありません。
* 「#」に続くものはすべてコメントです（図3.2.5.1参照）。
* 行は空でもかまいません（図3.2.5.1.4参照）。

<figure><img src="https://147116332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz9HWyQapP9tu9mJjh5O9%2Fuploads%2Fgit-blob-6f7e46b4c3d39d6a2033c238739decdff935ff28%2FCapture%20(30).JPG?alt=media" alt=""><figcaption><p>図3.2.5.1.2: プラスおよびマイナス演算子を持つ2つのルール。</p></figcaption></figure>

#### 組み合わせ式

* ルールの右側の組み合わせ式は、荷重ケース名または荷重組み合わせ名の連続で構成されます。これらのそれぞれに係数のプレフィックスを付けることができます。
* 組み合わせ名およびこれらへの参照は任意の順序で発生できます。図3.2.5.1.4では「s」は「ULS」の後に定義することもできました。循環参照はエラーメッセージにつながります。
* 名前の前の係数は、数値または「|」で区切られた2つの数値の中括弧で構成される式とすることができます。後者は、最初または2番目の数値となりうる係数を象徴します。これにより、「(0|number) \* name」を介して可変荷重を表現できます（図3.2.5.1.2参照）。「&」を介した組み合わせのコンテキストでは、最初の数値は上限の役割を果たします。2番目の数値は下限を設定します。

<figure><img src="https://147116332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz9HWyQapP9tu9mJjh5O9%2Fuploads%2Fgit-blob-eae7a6b11b09aa56a0f146597b42682d2c86a53a%2FCapture%20(3).JPG?alt=media" alt=""><figcaption><p>図3.2.5.1.3: 先頭係数の並べ替えによる組み合わせ。</p></figcaption></figure>

#### 組み合わせ演算子

式は左から右に評価されます。係数付きの名前は、優先度の昇順で次の演算子でリンクできます:

* 「|」は「または」に対応します。
* 「+」および「-」は加算および減算を表します。
* 「&」は並べ替えられた先頭係数を使用して項を組み合わせます（図3.2.5.1.3参照）。名前の前の数値は上限および下限として解釈されます。1つの数値のみの係数の場合、それが上限値と下限値の両方であると想定されます。結果として得られる各荷重ケースでは、項のうち1つが上限値で最初に入り、他は乗算係数として下限値で荷重ケースに加わります。
* 中括弧「(」および「)」を使用して、演算子のデフォルトの優先度を上書きできます（図3.2.5.1.4参照）。

<figure><img src="https://147116332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz9HWyQapP9tu9mJjh5O9%2Fuploads%2Fgit-blob-f37938f4b339c96ea8d6bdf8e230f5112ade1a52%2FCapture%20(14).JPG?alt=media" alt=""><figcaption><p>図3.2.5.1.4: 中括弧を使用して演算子をグループ化できます。</p></figcaption></figure>

#### 簡略化された正規表現

組み合わせ式の右側では、簡略化された正規表現を使用できます。これらは「$」または「\*」で終わり、それぞれ「$」または「\*」までの同一のすべての名前にマッチします。したがって、「wind$」はたとえば「windNorth」および「windSouth」にマッチしますが、「wWest」にはマッチしません。マッチするすべての項目はOR関係で組み合わされます。

簡略化された正規表現は、荷重ケース名または荷重ケースの組み合わせ名のいずれかにマッチします。後者が前者より優先されます。荷重ケース名はモデル組み立て時にのみ既知であるため、荷重ケース名の簡略化された正規表現のマッチングはその段階で行われます。

簡略化された正規表現の適用により、名前を介してアクションを分類し、一般的に適用可能な組み合わせルールを定式化できます。図3.2.5.1.5では、荷重ケース「w11」、「w22」、「s11」、「s22」は荷重コンポーネントを介して供給される可能性のある荷重ケースの役割を果たします。「w」と「s」は、「w」と「s」で始まるすべての荷重ケースを捕捉するために正規表現を使用しています。

図3.2.5.1.5の入力行0から3が欠けている場合、左側の出力には「w$」および「s$」が含まれ、それらの荷重ケース名への解決はモデル組み立て段階に延期されます。

<figure><img src="https://147116332-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fz9HWyQapP9tu9mJjh5O9%2Fuploads%2Fgit-blob-1d8282f7638c8fbc8c91b2f352f4e392bc2f4533%2FCapture%20(12).JPG?alt=media" alt=""><figcaption><p>図3.2.5.1.5: 簡略化された正規表現を使用して一般的に適用可能な組み合わせルールを記述できます。</p></figcaption></figure>

{% file src="/files/GoW3kXtarqg2FqnSg0zA" %}
