特許法第30条第2項適用 数値震動台研究開発プロジェクト成果発表会「E-Modeler ユーザーマニュアル」国立研究開発法人防災科学技術研究所、平成30年3月29日 〔刊行物等〕
特許法第30条第2項適用 数値震動台研究開発プロジェクト成果発表会「E-Modelerを使用した鉄筋コンクリート構造のメッシュ生成チュートリアル」国立研究開発法人防災科学技術研究所、平成30年3月29日 〔刊行物等〕
特許法第30条第2項適用 数値震動台研究開発プロジェクト成果発表会「E-Modelerを使用した鉄骨構造のメッシュ生成チュートリアル」国立研究開発法人防災科学技術研究所、平成30年3月29日 〔刊行物等〕
特許法第30条第2項適用 数値震動台研究開発プロジェクト成果発表会、プログラム「E-Modeler」国立研究開発法人防災科学技術研究所、平成30年3月29日 〔刊行物等〕
特許法第30条第2項適用 数値震動台研究開発プロジェクト成果発表会「詳細有限要素モデルの簡易構築アプリケーションの開発」藤原 淳、平成30年3月29日 〔刊行物等〕
特許法第30条第2項適用 一般社団法人日本建築学会日本建築学会大会学術講演梗概集「建築骨組の6面体ソリッド有限要素モデル構築のためのプリ処理モジュール開発 その1プリ処理モジュールの基本コンセプト」山下 拓三、藤原 淳、宮村 倫司、平成30年9月4日 〔刊行物等〕
特許法第30条第2項適用 2018年度日本建築学会大会[東北]公開資料「建築骨組の6面体ソリッド有限要素モデル構築のためのプリ処理モジュール開発その1 プリ処理モジュールの基本コンセプト」山下 拓三、宮村 倫司、藤原 淳、平成30年9月4日 〔刊行物等〕
特許法第30条第2項適用 一般社団法人日本建築学会日本建築学会大会学術講演梗概集「建築骨組の6面体ソリッド有限要素モデル構築のためのプリ処理モジュール開発その2 実装と試用版」藤原 淳、宮村 倫司、山下 拓三、平成30年9月4日 〔刊行物等〕
特許法第30条第2項適用 2018年度日本建築学会大会[東北]公開資料「建築骨組の6面体ソリッド有限要素モデル構築のためのプリ処理モジュール開発その2 実装と試用版」藤原 淳、山下 拓三、宮村 倫司、平成30年9月4日
以下、本発明の実施の形態を図面を参照しつつ説明する。図1は本発明の実施形態に係る六面体要素モデル生成システム及び六面体要素モデル生成方法で扱うコンピューターシミュレーション上の建築骨組構造を説明する図であり、図1(A)は建築骨組構造の一例を示す図であり、図1(B)は図1(A)中Xの拡大図であり、図1(C)は図1(B)中Yの拡大図である。
本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法は、実際の建築骨組構造をコンピューターによって模擬して、当該建築骨組構造を有限要素法で解析するために、コンピューターシミュレーション上の建築骨組構造を三次元の六面体要素(六面体メッシュ)モデルに分割することを目的としている。
図1で示す建築骨組構造は、10階建ての建築骨組構造の例を示している。この内の7階部分の拡大図が図1(B)である。図1(C)は図1(B)中Yの拡大図であり、建築骨組構造を構成する部材の各要素が例示的に示されている。前述したように、建築骨組構造を構成する「部材」は実際のものではなく、あくまでコンピューターシミュレーション上のものである。
特に「部材」がコンピューターシミュレーション上のものであることを強調したい場合には、「部材」を「部材データ」と言い換えることがある。なお、本明細書では、実在の構成のそのままの名称(例えば「柱部材」など)を、実在の構成をシミュレーションするためのデータにも用いることもある。
本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法は、部材データの種別として、少なくとも「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の5種類を有している。図1(C)にも、これら5種類の「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の各部材データが示されている。
本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法では、「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の各部材それぞれがどのような寸法を有し、どのように組み合わされているか(どのようにレイアウト・配列されているか)によって、コンピューターシミュレーション上の建築骨組構造を規定している。このような建築骨組構造を規定するデータを、本明細書では「構造データ」と称する。
本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法によって、建築骨組構造を三次元の六面体要素に分割するに当たっては、ユーザーは、有限要素法で解析しようとする建築骨組構造を組み立てていくことで、構造データを規定する。ユーザーが簡便に、所望とする建築骨組構造をコンピューター上で組み立てていくことを可能とするように、本発明では、「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の各部材データを網羅的に収録した部材データベース(部材ライブラリー)を準備しておくことが好ましい。
図2は部材データベース(部材ライブラリー)の階層構造例を説明する図である。部材データベースには、予め準備された各部材データが、記録されている。本実施形態においては、5種類の「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の形状系の各部材データが記憶される。また、部材データベースには、前記の各部材データが、どのような材料で構成されているかについて設定する際に用いる材料系の「材料データ」が記憶される。
部材データベースにおいては、形状系の「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」のそれぞれの下位に、さらに部材のタイプ別の分類があり、さらにタイプ別の分類の下位に、個別の部材が収録されている。また、「材料データ」の下位には、材料別の分類があり、材料別のデータが収録されている。
部材データベースにおいては、例えば、「柱部材」の下には、「鉄骨柱」、「RC柱」、・・・など柱部材のタイプ別のデータに分類されてあり、さらに、例えば「鉄骨柱」の下には、C1、C2、・・・などの個別の部材のデータが分類され記録されている。鉄骨柱C1は、例えば、規格化された汎用のもので、部材データベースにおいては、当該鉄骨柱C1に係る寸法の登録データが格納されている。
ユーザーにおいては、例えば「柱部材」として「鉄骨柱」の下のC1に係るデータを、不図示のユーザーインターフェイス手段などでピックアップし、これをレイアウトすることで、建築骨組構造をコンピューター上で組み立てていくこができる。部材データベースに収録されている部材データは、ユーザーが必要に応じて呼び出して、建築骨組構造の組み立てに利用可能することができる、言わば、部品のようなものである。
上記のような部材データベースに記憶されている部材データは、それぞれ属性データを有している。図3は部材データが保持する属性データを説明する図である。このような属性データとしては種々のものを挙げることができるが、本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法を実現するために、部材データは属性として、少なくともその部材(データ)の頂点に係るデータと、その部材(データ)の寸法に係るデータと、その部材(データ)の材料に係るデータとを、保持している。
「接合部部材」、「柱部材」、「梁部材」、「床スラブ部材」、「壁部材」の各部材はいずれも、六面体領域で構成される形状をなしている。そして、図3に示すように各部材データはいずれも、六面体の直方体形状の角部である頂点に係るデータを保持している。さらに、各部材データは寸法に係るデータであるW(幅)、H(高さ)、D(奥行き)の値を有するものとなっている。
建築骨組構造を規定する構造データは、上記のような複数の部材データが、所定の座標中に配置されたものの集合である、ということができる。
次に、上記のような複数の部材データからなり、有限要素法の解析対象となる建築骨組構造をユーザーが構築する際の手順を、図4を参照して説明する。図4は本発明の実施形態に係る六面体要素モデル生成システム及び六面体要素モデル生成方法における建築骨組構造の構造データ設定処理のフローチャートを示す図である。このようなフローチャートに基づく処理は後述するコンピューターによって実行され得る。また、図5乃至図8は、上記の建築骨組構造の構造データ設定処理におけるユーザーインターフェイス(UI)画面の一例を示す図であり、当該コンピューターにおけるディスプレイ装置22などに表示されるものである。
図4において、ステップS100で、建築骨組構造の構造データ設定処理が開始されると、続いて、ステップS101に進み、本発明に係る六面体要素モデル生成システムの初期画面(不図示)を表示する。ステップS01において、ユーザーは「新規プロジェクト」の作成を行うようにシステムに対して要求する。
ステップS102では、建築骨組構造のフロアの設定・通り芯の設定をユーザーに要求に対して要求する。図5はステップS102におけるユーザーに対する要求で表示されるUI画面の一例である。
ステップS02においては、このようなUI画面に対して、キーボードやポインティングデバイス(入力部18)によって、ユーザーが入力を行うことが想定されている。ユーザーは、図5の画面を参照し、キーボードやポインティングデバイス(入力部18)によって、「フロアの設定」において、階数、階高を入力したり、「通り芯の設定」において、X方向、Y方向の通り芯の数や、それらの番号、座標値などを入力したりする。図6には、ユーザーによってX方向の通り芯であるX1乃至X3が設定され、Y方向の通り芯であるY1乃至Y3が設定されたUI画面の例が示されている。図6乃至図8は、UI画面で建築骨組構造の平面図を示すものである。
以上のような設定で通り芯が設定された(例えば、図6(A))ので、以下では設定された通り芯の交差部毎に部材ユニットを配置していくように、ユーザーに対して要求するものである。
図6の例では、ユーザーによって通り芯の交差部である(X1,Y1)、(X1,Y3)、(X1,Y2)、(X2,Y2)、(X3,Y2)、(X1,Y3)、(X2,Y3)、(X3,Y3)の8箇所に、部材ユニットを配置していくように、ユーザーに対して要求する。
ここで、「部材ユニット」は、接合部部材、柱部材、梁部材、床スラブ、壁部材からなるまとまりであり(全ての種類の部材が必須ではない)、通り芯の交差部から、前後左右のスパン略中央までの領域に含まれる部材の構成であるとする。なお、部材ユニットに含まれる部材の範囲は、通り芯の交差部を中心として、ユーザーが指定することも可能である。
ステップS103では、部材ユニットを作成する通り芯の交差部の選択をユーザーに要求する。これに対応して、ユーザーはステップS03で、図6(A)に示される通り芯の交差部から、部材ユニットの作成・設定を行いたい通り芯の交差部を、キーボードやポインティングデバイス(入力部18)によって選択する。
続く、ステップS104では、選択した部材ユニットの構成の設定をユーザーに要求する。図6(B)はステップS103におけるユーザーに対する要求で表示されるUI画面の一例である。
ユーザーはステップS04では、接合部部材、柱部材、梁部材、床スラブ、壁部材の有無を、キーボードやポインティングデバイス(入力部18)によって選択して、部材ユニットを構成する。
図7は、ステップS103及びステップS104に基づいて、ユーザーによって通り芯の交差部(X1,Y1)に部材ユニットが配置されたUI画面例を示している。
フローチャートに厳密には示さないが、ステップS103、ステップS104からなる連続する工程は、全ての通り芯における交差部について実施される。すなわち、図7に示した設定の後、交差部(X1,Y2)、(X1,Y3)、(X2,Y1)、・・・・の設定が適宜実施されることが想定されている。
なお、本実施形態では、通り芯の交差部を設定してから、選択した交差部に対して、部材ユニットを配する順で、構造データを構成するようにしているが、部材ユニットをユーザーが構成してから、これを通り芯の交差部に配する順で、構造データを構成するようにしてもよい。
続く、ステップS105では、ユーザーが平面図に配置した各部材に関する情報(寸法、材料、分割数、節点調整時許容角度等)の入力を、ユーザーに対して要求する。ステップS05で、ユーザーは、例えば図2で示した部材データベース(部材ライブラリー)の形状系の対象部材の基本登録データを利用することができ、解析で用いる材料パラメータのデータとして材料系の材料データを利用することができる。
当該各部材に関する情報の一つである「寸法」は、部材の寸法データであり、W(幅)、H(高さ)、D(奥行き)などの各値である。当該情報の一つである「分割数」は、部材を幾つに(どの程度の細かさに)分割して、幾つの六面体要素(六面体メッシュ)とするかを指定するためのデータである。
なお、上記のような「分割数」の指定に代えて、六面体要素(六面体メッシュ)のサイズによって指定する構成を採ることもできる。
建築骨組構造においては、隣り合う部材同士における六面体要素(六面体メッシュ)モデルの節点が一致しない、という事象が生じることがある。このような事象を、節点の不整合、と称する。節点の不整合が生じると、有限要素法による解析での計算精度に大きく影響を与えるケースがある。そこで、本発明においては、このような節点の不整合が生じた場合には、不整合を起こしている節点を移動させることで、これに対処することを行う。このような節点の移動は、実質的には、後述する六面体ブロックの頂点を移動させることで、本発明は不整合に対処している。すなわち、正確には、六面体ブロックの頂点を移動させることにより、その六面体ブロック内のメッシュ分割の際に節点の位置が移動されることになる。
部材が隣り合う面が直交する面で構成されている場合は、部材を要素分割した時のそれぞれの六面体要素(六面体メッシュ)モデルは直方体であるが、上記のような節点の移動に伴い、六面体要素(六面体メッシュ)モデルは直方体から、隣り合う面が必ずしも直行しない六面体となる。このとき、元の面から、節点移動後の面との間のずれ角度をどの程度まで許容するかが、「節点調整時許容角度」である。ステップS105で、各部材に関して入力される情報の一つである「節点調整時許容角度」は、このような角度に係るデータである。
上記のような一連のステップを経て、ステップS106では、建築骨組構造の構造データ(どの部材がどのような寸法を有しており、どの位置にどのような配置で、どの部材と隣接しており、どのような材料で構成されているか等が記述されたデータ)の設定が完了し、ステップS107で、建築骨組構造の構造データ設定処理が終了する。
図9は建築骨組構造の構造データ設定処理により設定された建築骨組構造の平面図の一例を示す図である。本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法においては、建築骨組構造を平面図としてみたとき、通り芯を中心とした、前後左右の通り芯のスパン中央までの領域に含まれる部材の構成を「部材ユニット」と定義する。また、部材ユニットに含まれる部材の範囲は、通り芯を中心として、ユーザーが指定することも可能である。図9において、太い破線で区切られた箇所が、一つの「部材ユニット」として定義されるユニットである。本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法においては、「部材ユニット」として定義されている範囲内では、六面体要素(六面体メッシュ)モデルの節点が一致しない不整合については、一切許容することをしない。これにより、実際の建築骨組構造において応力、ひずみなどの物理量の急激な変化が起こりやすい柱梁接合部で、これら物理量の連続性を確保できるような整合メッシュを必ず用いることができ計算精度を担保する。
一方、部材ユニット間の境界においては、六面体要素(六面体メッシュ)モデルの節点が一致しない不整合を許容する。部材ユニット間の境界である通り芯のスパン中央部の建築骨組構造においては、応力がかかりにくく、興味の対象となる損傷や破壊は発生しにくいため、多点拘束条件(Multi Point Constraints;MPC)などによって不整合なメッシュを接続したとしても,計算精度に及ぼす影響は小さいと考えられる。そこで、部材ユニット間の境界では、節点の間の不整合を許容し、不整合を解消するための要素分割の増加に伴うアスペクト比の大きい、すなわち、品質の良くないメッシュの生成や要素数の増加を抑制する。
なお、これまで「部材ユニット」としては、平面図に基づいた定義を行ったが、鉛直方向の「部材ユニット」の間の境界は、階高中央部として定義される。また、応力がかかりにくい高さをユーザーが指定することも可能である。
続いて、ユーザーによって設定された建築骨組構造の構造データを、三次元の六面体要素(六面体メッシュ)モデルに分割していく処理について説明する。
ここで、改めて本明細書における階層構造や、用語について説明する。本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法において、三次元の六面体の六面体要素(六面体メッシュ)モデルに分割する対象であるものの全体は「建築骨組構造」として定義される。
そして、このような「建築骨組構造」は、複数種別の部材から構成されるものである。本実施形態においては、部材としては、接合部部材、柱部材、梁部材、床スラブ部材、壁部材の少なくとも5種類の部材を有しているが、本発明で、部材の種類がこれらに限定されることでもない。また、これらの部材は、六面体領域で構成される形状を有するものであれば良く、構造部材として扱われるH形鋼や角形鋼管を扱うことができる。境界に沿ったメッシュである境界適合格子の生成手法を用いることにより、円形鋼管などの曲面を有する部材にも対応することができる。
建築骨組構造を構成するそれぞれの部材は、部材自らの頂点、と、隣り合う部材などの頂点とに基づいて「六面体ブロック」に分割される。六面体ブロックは、最終の六面体要素に分割される前段における六面体である。
六面体要素(六面体メッシュ)モデルは、有限要素法による解析に用いられる最小の単位である。この六面体要素(六面体メッシュ)モデルの角部については、単に「頂点」と称したり、或いは、特に「節点」と称したりすることがある。図10は六面体ブロックから六面体要素(六面体メッシュ)モデルへの分割を示す図である。
それでは次に、建築骨組構造の構造データを、三次元の六面体要素(六面体メッシュ)モデルに分割していく処理について、具体的に説明していく。図11は本発明の実施形態に係る六面体要素モデル生成システム及び六面体要素モデル生成方法における六面体要素分割処理のフローチャートを示す図である。このようなフローチャートに基づく処理もコンピューターシステムによって実行され得る。
図11において、ステップS200で六面体要素分割処理が開始されると、続いて、ステップS201に進み、ユーザーによって設定済みの建築骨組構造の構造データを取得する。すなわち、このステップでは、これから六面体要素(六面体メッシュ)モデルに分割する建築骨組構造に関する情報全体が取得される。
ステップS202では、取得された建築骨組構造の構造データの部材データの中から、処理対象として着目する部材(着目部材)の部材データを選定する。次のステップS203では、取得された建築骨組構造の構造データを参照して、着目している部材に対して、当接している部材の(当接)部材データを取得する。
続くステップS204においては、着目部材と当接部材の参照面に関するデータを、当該着目部材に組み入れるルーチン(参照面データの組み入れサブルーチン)を実行する。
ここで、本発明に係る六面体要素モデル生成システム1及び六面体要素モデル生成方法では、参照点という概念、及びこの参照点に関連して、参照面という概念を導入する。そこで、まず図13に示す直方体を例にとり、参照点、及び参照面の考え方について説明する。
参照点は、部材の頂点、鉄筋を配置するための点、または、ユーザー指定の節点を配置するために用い得る点である。
それぞれの参照点においては、参照点を通るzy面に平行な面をx参照面、zx面に平行な面をy参照面、xy面に平行な面をz参照面が定義される。
図13に示す直方体においては8つの頂点P1、P2、P3、P4、P5、P6、P7、P8が参照点であり、それぞれの参照点の三次元座標は(x1,y1,z1)、(x2,y1,z1)、(x2,y2,z1)、(x1,y2,z1)、(x1,y1,z2)、(x2,y1,z2)、(x2,y2,z2)、(x1,y2,z2)と表現できる。参照点の点群はこれら三次元座標を要素とする8次元の配列として表現できる。
一方、それぞれの参照点に対して、参照点を通るzy面に平行な面、zx面に平行な面、xy面に平行な面が存在し、それぞれx参照面、y参照面、z参照面と呼ぶこととする。
P1においてx参照面ではy座標、z座標は任意であるのでx参照面として登録に必要な情報はx1のみであり、また同様にy参照面、z参照面も登録に必要な情報はそれぞれy1とz1である。
直方体を構成する面を参照面によって表現する(「登録する」とも称することとする)ことを考える。先のP1に加えて、随時、P2からP8までx参照面、y参照面、z参照面を登録する際に、既に登録されている参照面と同一の面を除く条件を適用すると、図13の直方体においてx参照面は[x1,x2]として二つの参照面が、y参照面は[y1,y2]として二つの参照面が、z参照面は[z1,z2]として二つの参照面が登録されることになる。
また、本発明に係る六面体要素モデル生成システム1及び六面体要素モデル生成方法では、参照面(データ)の組み入れ(或いは、追加)、という概念も利用する。次に、図14を参照して、参照面(データ)の組み入れの概念を説明する。
図14においては、着目部材(部材A0)に対して当接部材(部材B0)が追加された際に、参照面がどのように追加(組み入れ)されていくのか、また、そのような参照面によって、部材がどのように六面体ブロックへと分割されていくのかにつき説明する。
図14の当接部材の直方体(部材B0)について、8つの頂点Q1、Q2、Q3、Q4、Q5、Q6、Q7、Q8が参照点であり,それぞれの参照点の三次元座標は(x3,y1,z2)、(x4,y1,z2)、(x4,y2,z2)、(x3,y2,z2)、(x3,y1,z3)、(x4,y1,z3)、(x4,y2,z3)、(x3,y2,z3)と表現できる。
図13での説明より、当接部材(部材B0)については、x参照面は[x3,x4]として二つの参照面が、y参照面は[y1,y2]として二つの参照面が、z参照面は[z2,z3]として二つの参照面が存在する。
ここで、参照面の組み入れに際しては、既に登録されている参照面と同一の面(や距離が近い面)については除くこと(条件1)、かつ、参照面が着目部材(部材A0)を通る場合は、参照面を着目部材(部材A0)に追加すること(条件2)を行う。条件1は参照面の重複は排除するものであり、条件2は接触するようにして追加される部材(当接部材)の通過参照面を着目部材にも追加する、ということができる。
2つの条件を満足する参照面を追加するものとすると、当接部材の参照面から着目部材へ追加される参照面はx参照面に二つであり、更新されるx参照面の情報は[x1,x2,x3,x4]となる。
これらの参照面で切断することにより,着目部材は3つの六面体ブロックに分割される。図14(B)は部材B0の参照面に関するデータが部材A0に組み入れられ、部材A0がA1、A2、A3の3つの六面体ブロックに分割された様子を示している。このような着目部材の六面体ブロックへの分割処理については後に詳述する。
なお、図14において、部材A0が着目する部材に相当するものであり、部材B0が当接する部材に相当するものであるとしている。また、部材A0と部材B0は共に直方体状の六面体であり、何れの部材の何れの辺も、図面内に示されているxyz座標に平行である。また、実際の形状が直方体でない場合でも、対象領域を直方体に変換する基準座標系に写像してから、同様の処理を行ってもとの座標系に写像し直すことにより、本発明は直方体以外の形状への拡張が可能である。また、ここでは図示していないが、部材として、六面体より構成される部材、例えば、H形鋼や角形鋼管を扱うことができる。
また、図14では、簡便のために、部材A0と部材B0はzx平面内に共通の面を有するものの例で説明を行うと共に、zx平面内における参照点の組み入れのみの説明を行っている。しかしながら、一般的に、部材A0と部材B0はzx平面内に共通の面を有するものではない。したがって、当接部材の参照点が含まれるxy平面に平行な面(z参照面)、yz平面に平行な面(x参照面)、zx平面に平行な面(y参照面)について、参照面データの組み入れサブルーチンにおける処理が実行される。
以上の参照点、参照面の説明を参考にしつつ、次に、参照面データの組み入れサブルーチンについて説明する。図12は参照面データの組み入れサブルーチンのフローチャートを示す図である。
図12において、ステップS300で、参照面データの組み入れサブルーチンが開始されると、続くステップS301においては、着目部材の参照点群が取得される。
ステップS302では、参照面の追加サブルーチンが実行される。この参照面の追加サブルーチンのフローチャートを図15に示す。図15におけるフローチャートでは、x参照面についてのルーチン、y参照面についてのルーチン、z参照面についてのルーチンをそれぞれ実行するものである。以下、この参照面の追加サブルーチンのフローチャートについては、図14を参照しつつ、例示的に説明する。
ステップS302で実行される参照面の追加サブルーチンでは着目部材(部材A0)の参照点群に付随する参照面のうち、条件を満足する参照面を追加することが行われる。
図14の例によれば、x参照面として[x1,x2]の二つの参照面が、y参照面として[y1,y2]の二つの参照面が、z参照面として[z1,z2]の二つの参照面が追加される。
ステップS303においては、当接部材(部材B0)の参照点群が取得される。ステップS304では、参照面の追加サブルーチンが実行され、当接部材の参照点群に付随する参照面のうち、条件を満足する参照面を着目部材(部材A0)に追加する。図14の例によれば、当接部材のx参照面として[x3,x4]の二つの参照面が新たに追加されて着目部材のx参照面は[x1,x2,x3,x4]の4つに更新される。([x3,x4]のx参照面については、図14の斜線を有する面を参照。)
以上のような参照面データの組み入れサブルーチンが終了すると、図11に示す元のフローチャートにリターンする。
さて、図12の元のルーチンである図11のフローチャートに戻り、ステップS205では、 建築骨組構造の構造データ中の全ての部材データが選定されたか否かが判定される。
ステップS205における判定がNOであるときは、ステップS208に進み、まだ選定されていない次の部材を選択して、ステップS202に戻りループする。一方、ステップS205における判定がYESであるときは、ステップS206に進む。
ステップS206では、着目部材に登録された参照面で切断することにより着目部材を六面体ブロックに分割する。以下、図14に基づいて、着目部材を六面体ブロックに分割する例について説明する。
図14において、着目部材はx3のx参照面により切断される。この切断により新たに4つの頂点P9、P10、P11、P12が追加され、それぞれの三次元座標は(x3,y1,z1)、(x3,y2,z1)、(x3,y1,z2)、(x3,y2,z2)となる。
さらに、着目部材はx4のx参照面による切断される。この切断により新たに4つの頂点P13、P14、P15、P16が追加され,それぞれの三次元座標は(x4,y1,z1)、(x4,y2,z1)、(x4,y1,z2)、(x4,y2,z2)となる。
以上により、着目部材はP1、P9、P10、P4、P5、P11、P12、P8を頂点とする六面体ブロックA1と、P9、P13、P14、P10、P11、P15、P16、P12を頂点とする六面体ブロックA2と、P13、P2、P3、P14、P15、P6、P7、P16を頂点とする六面体ブロックA3に分割される。
続くステップS207では、建築骨組構造の構造データ設定処理におけるユーザーからの指定(「分割数」の指定)を参照し、六面体ブロックを六面体要素(六面体メッシュ)モデルに分割する。図16には、図13及び図14で示した例における六面体要素(六面体メッシュ)モデルへの分割を示す図である。二次元化されている図16の例では、x軸に平行な線及びy軸に平行な線によって切断されることで、六面体要素(六面体メッシュ)モデルに分割される様子が示されているが、本ステップが、実際の三次元の六面体ブロックに適用される場合には、六面体ブロックはxy平面に平行な面、及び、yz平面に基づく平行な面、zx平面に平行な面によって切断されることで分割される。なお、それぞれの部材について、六面体要素への分割を終了してから次の部材の選択をしても同様の結果が得られるため、ステップS205をステップS207の後に移動しても構わない。
ステップS209で、六面体要素分割処理が終了する。
図17及び図18は、上記のような六面体要素分割処理によって六面体要素(六面体メッシュ)モデルが生成される例を順序立てて示す図である。
図17(A)は直方体の集合で構成された部材を示しており、鉄骨構造物の部材に用いられるH形鋼に対応している。部材の頂点が参照点になっており、この参照点に付随する参照面から部材を六面体ブロックに分割していることを示している。図17(C)は、それぞれの六面体ブロックを要素分割していることを示している。
図18は、図17に示す部材の組み合わせに、新たに一つの部材が上方に当接した場合を示している。図18(A)に示すように、H形鋼が着目部材の場合、新たな部材が当接部材として振る舞い、H形鋼に参照面が追加される六面体ブロックに分割される。一方、新たな部材も交代で着目部材として選択され、H形鋼が当接部材として振る舞い、新たな部材にも参照面が追加され六面体ブロックに分割されることになる。図18(C)は、六面体ブロックから六面体要素(六面体メッシュ)モデルへと分割された様子を示している。
これまで説明した実施例では、部材の頂点を参照点として扱っていた。部材中に埋設される鉄筋は、六面体ブロックを六面体要素(六面体メッシュ)モデルへ分割する際の切断面が交って形成される線上に存在することが前提であった。以下で説明する場合も、鉄筋は切断面の交線上に存在することが前提で、鉄筋コンクリート構造(RC構造)の有限要素法による解析では、しばしば当該線によって鉄筋が模擬される。
ここで、模擬する鉄筋が、前記のような二切断面の交線に存在しない場合について検討していく。 図19は二切断面の交線上に鉄筋がない場合の六面体要素への分割例を説明する図である。
例えば、鉄筋コンクリート(RC)部材では、鉄筋は特定の断面位置に配筋される。そのため特定の断面位置で材軸方向に節点が並ぶような要素分割が必要となり、その位置を特定するための断面での点(三次元空間では線)も参照点、または参照線(参照点の集合)として扱うことができる。
RC構造の有限要素法による解析では、鉄筋を六面体要素などのソリッド要素でモデル化すると解析モデルの規模(節点数、要素数、自由度数)が大きくなることから、しばしば鉄筋は線材要素でモデル化される。そこでここでは、鉄筋を線材要素でモデル化する場合の分割例を説明する。なお、鉄筋自体を六面体要素でモデル化して、その断面位置での節点(三次元空間では線)を参照線として部材を分割することも可能である。
図19ではコンクリート部材はP1、P2、P3、P4、P5、P6、P7、P8を頂点とする六面体で表され、それぞれの三次元座標は(x1,y1,z1)、(x2,y1,z1),(x2,y2,z1)、(x1,y2,z1)、(x1,y1,z2)、(x2,y1,z2),(x2,y2,z2)、(x1,y2,z2)で表現できる。
コンクリート部材のx参照面は[x1,x2]の二つの参照面、y参照面は[y1,y2]の二つの参照面、z参照面は[z1,z2]の二つの参照面となる。
鉄筋の主筋位置を示す線L1、L2、L3、L4はそれぞれ[x3,z3]、[x4,z3]、[x4,z4]、[x3,z4]、表される。
鉄筋の主筋位置に関する参照面は、x参照面が[x3,x4]の二つの参照面、z参照面が[z3,z4]の二つの参照面で表される。
また、鉄筋のあばら筋のピッチを示す面は[y3,y4]で表され、これはそのままy参照面として用いることができる。
以上から、RC部材としての参照面は、x参照面[x1,x2,x3,x4]の四面、y参照面[y1,y2,y3,y4]の四面、z参照面[z1,z2,z3,z4]の四面となる。これらの参照面でRC部材を切断することにより合計3×3×3=27個の六面体ブロックに分割されることになる。
本発明においては、アスペクト比が大きい要素を生成されるのを回避するために、ステップS404、ステップS407、ステップS410の条件に示すように、例えばx参照面間の距離が設定した閾値以下の場合に参照面を追加しないようにしており、その際に隣接部材境界部の節点でメッシュの不整合が発生する。
以下、本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法における隣接する部材における境界部で、節点の不整合がある場合における対処・調整のアルゴリズムについて説明する。図20は本発明の実施形態に係る六面体要素モデル生成システム及び六面体要素モデル生成方法における隣接部材境界部調整処理のフローチャートを示す図である。
図20において、ステップS500で隣接部材境界部調整処理が開始されると、続いて、ステップS501に進み、隣接部材の境界部のうち、六面体要素の頂点が整合していない境界部(不整合を起こしている境界部)を抽出する。
続く、ステップS502では、抽出された不整合境界部の中から、一つの不整合部を選択する。
ステップS503では、その不整合境界部はスパン中央に相当するか、又は、階高中央に相当するか否か、が判定される。(別の表現をすると、当該不整合境界部が「部材ユニット」に相当するか否か、が判定される。)なお、不整合境界部の定義については、適宜ユーザーによって設定され得るように構成することが好ましい。
ステップS503における判定がYESである場合には、ステップS508に進み、当該不整合境界部については、不整合を許容することとする。ステップS508で許容した不整合について、有限要素法で計算を行う際には、例えば、多点拘束(MPC;Multi Point Constraints)などの条件設定などを用いることができる。ただし、このような条件設定に限定されるものではない。
一方、ステップS503における判定がNOである場合には、ステップS505のギャップ解消サブルーチンに進み、ギャップ解消サブルーチンを実行して,六面体ブロックの頂点を移動することで、六面体要素(六面体メッシュ)の不整合を解消する。
ここで、図21のフローチャートを参照して、ギャップ解消サブルーチンについて説明する。また、図22乃至図23はギャップ解消サブルーチンによる処理を例示的に説明する図である。
図22乃至図23において、部材Aと部材Bとが当接してなる建築骨組構造をzx面できった断面図である。当該図において、部材A側の○は鉄筋位置を示している。×は当接部材Bの参照面x7、x8、x9、x10による切断により追加された頂点を示している。この時、参照面x8は参照面x3との距離が閾値より小さく、参照面x9は参照面x4との距離が閾値より小さいことから、これらの参照面による部材A側の切断がなされないので部材AとBの境界間の頂点の位置が揃わず,メッシュの不整合が発生することになるが,両部材のx方向の共有する領域、すなわちx7≦x≦x10で、両部材のx参照面の数は同じであるので、ギャップを埋めることができればメッシュを整合させることができる。
図23は不整合の節点に基づいて新たに六面体要素ブロックを設定する例を示す図である。
図22は、接合部である部材Aと、梁である部材Bとが接合している状態を示している。以下、これらのx参照面に基づいて、両者の関係についてみておく。
まず、部材ユニットの中で参照面の折曲げを許容する優先順位を決める。ここでは、梁(部材B)側を折り曲げるように設定している。
ある部材Aに対して接合して隣接している部材Bにおける六面体要素ブロックの折り曲げよる調整を、本発明では「隣接部材調整」と称する。本発明は、不整合境界部において六面体ブロックの頂点を移動して節点の不整合を解消する隣接部材調整手段(処理)を有するものである。
続いて、接合部側から近い梁のy参照面と、折り曲げ対象のx参照面との交線を起点としてx参照面を折り曲げてギャップを埋めるようにする。
その時、折り曲げ前のx参照面との成す角が許容値以上であれば、次に接合部から近い梁のy参照面(を選び、同様の処理を行う)と、折り曲げ対象のx参照面との交線を起点として同様の処理を行う。
次に参照面の折り曲げによるギャップの解消方法について図21を参照しつつ説明する。
図21のフローチャートにおいて、ステップS600で、ギャップ解消サブルーチンが開始されると、続いて、ステップS601で、部材ユニットの中でどの部材を優先して折り曲げるかの設定を読み込む。
図22乃至23では、折り曲げないほうの部材をA、折り曲げるほうの部材をBとする。
なお、境界部を形成する2つの部材のうち、建築骨組構造としてより重要な部材(主部材)が折り曲げないほうの部材Aであり、主部材でないものが折り曲げるほうの部材Bである。例えば、境界部を形成する2つの部材が接合部部材と梁部材であれば、前者が折り曲げないほうの部材Aであり、後者が折り曲げるほうの部材Bである。このような部材の折り曲げる・折り曲げない、の優先順位の関係は、予め規定しておくことが好ましい。
また、図22乃至23で示す例では、横軸がx座標であり、縦軸がy座標である組み合わせを例にとって説明したが、本発明においては、横軸、縦軸の組み合わせが(y,z)の場合、(z,x)の場合も含まれるし、言及した組み合わせにおいて、縦軸-横軸を反対とした場合の組み合わせも含まれる。
ステップS602では、部材Aから近い部材Bのy参照面を選択する。
ステップS603では、選択したy参照面と折り曲げ対象のx参照面との交線を支点としてx参照面を折り曲げてギャップを埋める。
ステップS604では、折り曲げ前後のx参照面のなす角θを求める。
ステップS605では、θ<θth(閾値)であるか否かがが判定される。(図23参照)ステップS605の判定結果がYESであれば、ステップS603の通りの折り曲げとして(図24参照)、ステップS607に進み、元のルーチンにリターンする。
一方、ステップS605での判定結果がNOであれば、ステップS606に進み、部材Aから次に近い部材Bのy参照面を選択して、ステップS603に戻りループする。
さて、元のルーチンである図20の隣接部材境界部の調整処理のフローチャートに戻り、ステップS509においては、ステップS501で抽出された、全ての不整合境界部について、調整が行われたか否かが判定される。ステップS509での判定がNOであれば、ステップS507に進み、まだ調整をしていない、次の不整合部について選定を行い、ステップS503に戻る。一方、ステップS509での判定がYESであれば、ステップS510に進み処理を終了する。
図11に示すフローチャートにおいては、隣接する部材での不整合は想定していないが、仮に隣接する部材での不整合が存在するような場合には、図11に示すフローチャートにおいて、S206で六面体ブロックへの分割処理が実行された後に、図21で説明する、この隣接部材調整に係る処理が実行されることになる。
以上のように、本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法は、構造データ取得過程で構造データを設定することにより、骨組構造の六面体要素(六面体メッシュ)モデルを、部材ユニット境界部を除いて、整合したメッシュで自動的に生成することが可能となり、メッシュ生成に要する作業負荷を低減し、人為的ミスによるメッシュの不具合といったモデルの品質低下を防ぐことができる。
なお、本発明では、部材ユニット境界部では不整合を許容することもあるが、これは、骨組のスパン中央や階高中央の損傷や破壊現象が予想され難い位置で局所的に大きな変形は通常生じないため、多点拘束条件(MultiPoint Constraints;MPC)などによって不整合なメッシュを接続しても十分信頼できる結果が得られると考えられるからである。部材ユニット境界部のメッシュの不整合を許容することにより、メッシュの品質に影響を及ぼすアスペクト比が大きなメッシュの生成や生成される要素数の増加を抑制することができ、計算コストを抑えた上で前記のように十分信頼できる結果が得られる。
以下、これまで説明した六面体要素モデル生成処理を実行し得るコンピューターのシステムについて説明する。図25は本発明の実施形態に係る六面体要素モデル生成システムを実行するコンピューターのシステム構成例を示す図である。
図25において、10はシステムバス、11はCPU(Central Processing Unit)、12はRAM(Random Access Memory)、13はROM(Read Only Memory)、14は外部情報機器との通信を司る通信制御部、15はキーボードコントローラなどの入力制御部、16は出力制御部、17は外部記憶装置制御部、18はキーボード、ポインティングデバイス、マウスなどの入力機器からなる入力部、19は印刷装置などの出力部、20はHDD(Hard Disk Drive)等の外部記憶装置、21はグラフィック制御部、22はディスプレイ装置をそれぞれ示している。
図25において、CPU11は、ROM13内のプログラム用ROM、或いは、大容量の外部記憶装置20に記憶されたプログラム等に応じて、外部機器と通信することでデータを検索・取得したり、また、図形、イメージ、文字、表等が混在した出力データの処理を実行したり、更に、外部記憶装置20に格納されているデータベースの管理を実行したり、などといった演算処理を行うものである。
また、CPU11は、システムバス10に接続される各デバイスを統括的に制御する。ROM13内のプログラム用ROMあるいは外部記憶装置20には、CPU11の制御用の基本プログラムであるオペレーティングシステムプログラム(以下OS)等が記憶されている。また、ROM13あるいは外部記憶装置20には出力データ処理等を行う際に使用される各種データが記憶されている。メインメモリーであるRAM12は、CPU11の主メモリ、ワークエリア等として機能する。
入力制御部15は、キーボードや不図示のポインティングデバイスなどの入力部18を制御する。また、出力制御部16は、プリンタなどの出力部19の出力制御を行う。
外部記憶装置制御部17は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶するHDD(Hard Disk Drive)や、或いはソリッドステートドライブ(SSD)等の外部記憶装置20へのアクセスを制御する。本発明の六面体要素モデル生成システム(六面体要素モデル生成方法)を実現するシステムプログラムは、上記のような外部記憶装置20に記憶されている。また、グラフィック制御部21は、ディスプレイ装置22に表示する情報を描画処理するための構成である。
また、通信制御部14は、ネットワークを介して、外部機器と通信を制御するものであり、これによりシステムが必要とするデータを、インターネットやイントラネット上の外部機器が保有するデータベースから取得したり、外部機器に情報を送信したりすることができるように構成される。
また、外部記憶装置20には、CPU11の制御プログラムであるオペレーティングシステムプログラム(以下OS)以外に、本発明の六面体要素モデル生成システム(六面体要素モデル生成方法)をCPU11上で動作させるシステムプログラム、及びこのシステムプログラムで用いるデータなどがインストールされ保存・記憶されている。
本発明の六面体要素モデル生成システム(六面体要素モデル生成方法)を実現するシステムプログラムで利用されるデータとしては、基本的には外部記憶装置20に保存されていることが想定されているが、場合によっては、これらのデータを、通信制御部14を介してインターネットやイントラネット上の外部機器から取得するように構成することも可能である。また、本発明の六面体要素モデル生成システム(六面体要素モデル生成方法)を実現するシステムプログラムで利用されるデータを、USBメモリやCD、DVDなどの各種メディアから取得するように構成することもできる。本発明に係る六面体要素モデル生成システム(六面体要素モデル生成方法)は、以上のように構成されるコンピューターでプログラムが実行されることで実現され得る。
以上のように、本発明に係る六面体要素モデル生成システム及び六面体要素モデル生成方法は、構造データ取得過程で構造データを設定することにより、骨組構造の六面体要素(六面体メッシュ)モデルを、部材ユニット境界部を除いて、整合したメッシュで自動的に生成することが可能となり、メッシュ生成に要する作業負荷を低減し、人為的ミスによるメッシュの不具合といったモデルの品質低下を防ぐことができる。