(57)【特許請求の範囲】
【請求項１】
３次元の解析モデルを有限要素に分割した有限要素分割データの誤り検出方法であって、
注目する節点を取り巻く要素の境界がいくつの要素の境界となっているかをカウントしてカウント値をメモリに記憶するカウント行程と、
前記メモリに記憶されたカウント値が全て１の場合に、前記注目する節点の位置にくびれが生じていると判断するくびれ検出行程とを備えることを特徴とする有限要素分割データの誤り検出方法。
【請求項２】
解析モデルを有限要素に分割した有限要素分割データの誤り検出方法であって、
注目する節点を取り巻く要素の境界がいくつの要素の境界となっているかをカウントしてカウント値をメモリに記憶するカウント行程と、
前記注目する節点を取り巻く要素の前記節点まわりの内角の和を求める内角加算行程と、
前記メモリに記憶されたカウント値を調べ、該カウント値が全て２であれば、前記注目する節点が有限要素からなる解析モデルの内部に位置すると判定し、前記カウント値が１の要素があれば、前記注目する節点が前記解析モデルの外周に位置すると判定する位置判定行程と、
前記節点が前記解析モデルの内部に位置すると判定された場合に、当該節点回り内角の和に基づいて要素の重複があるかを判定し、前記節点が前記解析モデルの外周に位置すると判定された場合に、前記カウント値が１である境界の状態に基づいて当該節点の位置にくびれが生じているかを判断する誤り検出行程とを備えることを特徴とする有限要素分割データの誤り検出方法。
【請求項３】
前記カウント行程において、前記注目する節点を取り巻く要素の境界が見つからず、前記メモリに記憶されたカウント値が零の場合に、前記注目する節点が浮遊点であると判断する浮遊点検出行程とを備えることを特徴とする請求項２記載の有限要素分割データの誤り検出方法。
【請求項４】
前記解析モデルが２次元モデルであって、
前記誤り検出行程では、前記カウント値が全て２で前記節点が前記解析モデルの内部に位置すると判定された場合に、内角の和が２πでない場合に要素の重複であると判断することを特徴とする請求項２記載の有限要素分割データの誤り検出方法。
【請求項５】
前記解析モデルが２次元モデルであって、
前記誤り検出行程では、前記カウント値が１である境界があることから前記節点が前記解析モデルの外周に位置すると判定され、前記カウント値が１である境界の出現回数が２でない場合に、前記注目する節点の位置にくびれが生じていると判断することを特徴とする請求項２記載の有限要素分割データの誤り検出方法。
【請求項６】
前記誤り検出行程では、前記カウント値が１である境界があることから前記節点が前記解析モデルの外周に位置すると判定され、前記カウント値が１である境界の出現回数が２である場合に、更に前記内角の和が解析者の与えた前記解析モデルの外形の最大角と最小角との間にあるか否かに基づいて有限要素分割データの誤り検出を行い、前記間にない場合に要素の抜け，前記注目する節点の重複あるいはある節点が他の要素の境界上にあると判断することを特徴とする請求項５記載の有限要素分割データの誤り検出方法。
【請求項７】
前記解析モデルが３次元モデルであって、
前記誤り検出行程では、前記カウント値が全て２であることから前記節点が前記解析モデルの内部に位置すると判定された場合に、内角の和が４πでない場合に要素の重複であると判断することを特徴とする請求項２記載の有限要素分割データの誤り検出方法。
【請求項８】
前記解析モデルが３次元モデルであって、
前記誤り検出行程では、前記注目する節点が有限要素からなる解析モデルの外周に位置する場合に、前記カウント値が１の要素の境界である第１の自由面と他の自由面とのつながりをチェックするために、当該第１の自由面の前記節点を含む辺がいくつの自由面の境界となっているかをカウントし、当該辺についてのカウント値が全て２でない場合に前記節点の位置にくびれが生じていると判断することを特徴とする請求項２記載の有限要素分割データの誤り検出方法。
【請求項９】
前記誤り検出行程では、前記辺についてのカウント値が全て２であるが前記第１の自由面を有する要素が複数ある場合に、前記節点の位置にくびれが生じていると判断することを特徴とする請求項８記載の有限要素分割データの誤り検出方法。
【請求項１０】
前記誤り検出行程では、前記辺についてのカウント値が全て２であり前記第１の自由面を有する要素が１つである場合に、更に前記内角の和が解析者の与えた前記解析モデルの外形の最大角と最小角との間にあるか否かに基づいて有限要素分割データの誤り検出を行い、前記間にない場合に要素の抜け，節点の重複あるいはある節点が他の要素の境界上にあると判断することを特徴とする請求項８記載の有限要素分割データの誤り検出方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、広くは有限要素法を用いた解析プログラムのデータ作成に関し、具体的には作成した要素分割図のデータ誤りを検出する誤り検出方法に関するものである。
【０００２】
【従来の技術】
近年、コンピュータ性能の向上と共に、有限要素法を主体とした数値実験が設計のための一手段として広く行われ、その重要性は年々増大している。有限要素法を用いた解析データでは、解析モデルを有限要素に分割した有限要素分割データが必要である。有限要素分割データは、一般にコンピュータ（特にＥＷＳ）を利用して解析者と対話的に作成される。そして、作成された分割データは、形状等の入力ミスは別にしても、要素分割データそのものに誤りがある場合が多い。
【０００３】
一般に、要素分割データの誤りには、解析ソルバーによる計算誤差を増大させるが、計算自体には支障をきたさない非致命的誤りと、解析ソルバーが実行できないまたは解析者の意図とは別の条件で解かれてしまう要因となる等の致命的誤りとがある。前者は、一般に各要素の形状に起因し、扁平な要素、ゆがんだ要素等がこれらに該当する。これらは個々の要素の形状をチェックすることによって行われる。一方後者は、要素間の結合の不整合等に起因するものである。ここで、後者の誤りについてもう少し詳しく説明しておく。
【０００４】
なお、ここでは、全節点が２次元平面上にある薄板状の要素を２次元要素、体積を持ち３次元形状をした要素を３次元要素と呼び、また２次元要素からなるモデルを２次元モデル、３次元要素からなるモデルを３次元モデルと呼ぶことにする。
【０００５】
一般に、要素分割データは次の条件を満たしている必要がある。
（１）要素の重複がない。
（２）解析領域が要素で満たされている。
（３）同じ位置に重複した節点がない。
（４）要素の辺上（３次元要素の場合は面上）に節点がない。
（５）１節点（３次元モデルの場合は１辺）で解析モデルが接続しているような、くびれがない。
（６）要素の構成に使用されない節点（以後、浮遊節点と呼ぶ）がない。
【０００６】
これらの項目を図で示したのが図８，図９である。図中、白丸，黒丸は節点を示し、ｎ1 ，ｎ2 …等は節点の番号、ｅ1 ，ｅ2 …等は要素の番号を示す。
【０００７】
図８は２次元モデルにおける不適当な要素分割の例を示す。図８の各々は、以下の理由により、各要素分割図が不適当である。
【０００８】
図８（ａ）は、要素ｅ1 ，ｅ2 がそれぞれ節点（ｎ1 ｎ2 ｎ3 ），（ｎ3 ｎ4 ｎ1 ）からなる３角形要素、ｅ3 は節点（ｎ1 ｎ2 ｎ3 ｎ4 ）からなる４角形要素である。従って、要素ｅ3 は要素ｅ1 ，ｅ2 と重複している（上記項目（１））。
【０００９】
図８（ｂ）は、要素ｅ1 ，ｅ2 ，ｅ3 ，ｅ4 がそれぞれ節点（ｎ2 ｎ3 ｎ5 ），（ｎ3 ｎ4 ｎ5 ），（ｎ1 ｎ2 ｎ4 ），（ｎ2 ｎ4 ｎ5 ）からなる３角形要素である。本誤りは、本来図中の星印の位置にあるべき節点ｎ5 が要素ｅ3 の内部にあるために発生したものである。要素ｅ1 ，ｅ2 ，ｅ4 が要素ｅ3 と一部重複している（上記項目（１））。
【００１０】
図８（ｃ）は、節点（ｎ1 ｎ2 ｎ3 ）からなる斜線部分の要素が抜けている。（上記項目（２））。
【００１１】
図８（ｄ）は、要素ｅ1 ，ｅ2 ，ｅ3 ，ｅ4 がそれぞれ節点（ｎ1 ｎ2 ｎ5 ），（ｎ2 ｎ3 ｎ5 ），（ｎ3 ｎ4 ｎ6 ），（ｎ4 ｎ1 ｎ6 ）からなる３角形要素である。節点ｎ5 とｎ6 とが同一位置にある（上記（３））。
【００１２】
図８（ｅ）は、要素ｅ1 ，ｅ2 ，ｅ3 がそれぞれ節点（ｎ1 ｎ2 ｎ4 ），（ｎ2 ｎ3 ｎ5 ），（ｎ3 ｎ4 ｎ5 ）からなる３角形要素である。要素ｅ1 の辺上に節点ｎ5 がある（上記項目（４））。
【００１３】
図８（ｆ）は、２つの３角形要素ｅ1 ，ｅ2 を含む要素分割図において、節点ｎ1 の部分でくびれとなっている（上記項目（５））。
【００１４】
また、図９は３次元モデルにおける不適当な要素分割の例を示す。図９の各々は、以下の理由により、各要素分割図は不適当である。
【００１５】
図９（ａ）は、要素ｅ1 ，ｅ2 がそれぞれ節点（ｎ1 ｎ2 ｎ3 ｎ5 ｎ6 ｎ7 ），（ｎ1 ｎ3 ｎ4 ｎ5 ｎ7 ｎ8 ）からなる３角柱要素、ｅ3 が節点（ｎ1 ｎ2 ｎ3 ｎ4 ｎ5 ｎ6 ｎ7 ｎ8 ）からなる６面体要素である。要素ｅ3 は要素ｅ1 ，ｅ2 と重複している（上記項目（１））。
【００１６】
図９（ｂ）は、要素ｅ1 ，ｅ2 ，ｅ3 ，ｅ4 ，ｅ5 がそれぞれ節点（ｎ1 ｎ2 ｎ3 ｎ4 ），（ｎ3 ｎ4 ｎ6 ｎ5 ），（ｎ4 ｎ1 ｎ6 ｎ5 ），（ｎ1 ｎ3 ｎ6 ｎ5 ），（ｎ1 ｎ3 ｎ4 ｎ5 ）からなる４面体要素である。ここでの誤りは、本来４面体（ｎ1 ｎ3 ｎ4 ｎ6 ）の内部にあるべき節点ｎ5 が要素ｅ3 の内部にあるために発生したものである。要素ｅ1 〜ｅ5 が一部重複している（上記項目（１））。
【００１７】
図９（ｃ）は、３角柱要素ｅ1 ，ｅ2 と６面体要素ｅ3 を含む要素分割図が１つの辺ｎ1 ｎ2 だけで接し、くびれとなっている（上記項目（５））。
【００１８】
図９（ｄ）は、要素ｅ1 ，ｅ2 ，ｅ3 ，ｅ4 がそれぞれ節点（ｎ1 ｎ2 ｎ3 ｎ4 ），（ｎ1 ｎ6 ｎ2 ｎ5 ），（ｎ7 ｎ5 ｎ4 ｎ1 ），（ｎ8 ｎ5 ｎ2 ｎ4 ）からなる４面体要素である。節点（ｎ1 ｎ5 ｎ2 ｎ4 ）からなる部分の要素が抜けている（上記項目（２））。
【００１９】
図９（ｅ）は、要素ｅ1 ，ｅ2 ，ｅ3 ，ｅ4 がそれぞれ節点（ｎ1 ｎ2 ｎ9 ｎ5 ｎ6 ｎ11），（ｎ2 ｎ3 ｎ9 ｎ6 ｎ7 ｎ11），（ｎ3 ｎ4 ｎ10ｎ7 ｎ8 ｎ12），（ｎ4 ｎ1 ｎ10ｎ8 ｎ5 ｎ12）からなる３角柱要素である。節点ｎ9 とｎ10，ｎ11とｎ12が同一位置にある（上記項目（３））。
【００２０】
図９（ｆ）は、要素ｅ1 ，ｅ2 ，ｅ3 がそれぞれ節点（ｎ1 ｎ2 ｎ9 ｎ5 ｎ6 ｎ10），（ｎ2 ｎ3 ｎ9 ｎ6 ｎ7 ｎ10），（ｎ1 ｎ3 ｎ4 ｎ5 ｎ7 ｎ8 ）からなる３角柱要素である。要素ｅ3 の面上に節点ｎ9 ，ｎ10がある（上記項目（４））。
【００２１】
図９（ｇ）は、要素ｅ1 ，ｅ2 はそれぞれ節点（ｎ1 ｎ2 ｎ3 ｎ4 ｎ5 ｎ6 ），（ｎ3 ｎ7 ｎ6 ｎ8 ｎ9 ｎ10）からなる３角柱要素である。要素ｅ1 の面上に節点ｎ7 がある（上記項目（４））。
【００２２】
図９（ｈ）は、図９（ｃ）と同様に、要素ｅ1 ，ｅ2 を含む要素分割図において１つの辺ｎ1 ｎ2 だけで接し、くびれとなっている（上記項目（５））。
【００２３】
なお、上記項目（６）については、図による説明を省略した。
【００２４】
これら要素分割データの致命的誤りを検出するための従来方法として、一般に次の５つの方法がある。
【００２５】
（１）自由辺を描かせる方法
要素分割図のうち、１つの要素だけに使用されている辺（２つ以上の要素に共有されていない辺。３次元要素の場合、稜線。以後自由辺と呼ぶ）を抽出し、それを表示させる。要素分割図の内部に要素間の整合がとれていない部分がある場合は、整合がとれていない辺を表示し、誤りがあることを示す。従って、この方法によれば、上記項目（２），（３），（４），（５）の誤りを発見することができる。
【００２６】
（２）面積（体積）・重心を計算する方法
要素分割図における各要素の面積（３次元要素の場合、体積）を積算し、解析領域から計算される値と比較する。また要素分割図における各要素の面積（体積）および重心から要素分割図全体の重心を求め、それを解析領域から計算されるものと比較する。本方法によって、上記項目（１），（２）の誤りを発見することができる。
【００２７】
（３）重複要素を抽出する方法
同一の節点から構成される要素を抽出する。ここで抽出された要素は重複要素である。本方法によって、上記項目（１）の誤りを発見することができる。
【００２８】
（４）浮遊節点の抽出
各節点が、要素の構成に使用されていることをチェックする。本方法によって、上記項目（６）の誤りを発見することができる。
【００２９】
（５）要素を縮小して表示する方法
各要素を要素の重心を中心に縮小して表示する。そして表示された分割図から、すべての要素について誤りをチェックする。本方法によって、上記すべての誤りを発見することができる。
【００３０】
これら５つの方法のうち、（１）の方法は最も成果が大きく、また処理も簡単であることから一般的によく使用される。ここで（１）の方法のアルゴリズムについて具体的に説明しておく。
【００３１】
図１０は（１）の２次元モデルにおけるアルゴリズムを説明するためのフローチャート図である。図中、Ｒ１〜Ｒ６は処理を示し、流れに対して上向きの矢印は反復を示す。矢印横の記号ｅn ，ｌi ，ｌj は反復数を示し、それぞれ要素分割図中の総要素数、要素番号ｅi を構成する辺の総数、要素番号ｅj を構成する辺の総数である（以後同様）。
【００３２】
自由辺を抽出，表示するプロセスは次のようになる。
【００３３】
（１）処理Ｒ１によりチェックを行う要素ｅi の設定を行い、処理Ｒ２によりチェックを行う辺の設定を行う。
【００３４】
（２）処理Ｒ３により比較を行う要素ｅj の設定を行い、処理Ｒ４にて比較を行う辺の設定を行う（ｅi ≠ｅj ）。
【００３５】
（３）次に処理Ｒ５により、各辺の両端の節点番号の比較を行い、同じ辺かどうかを調べる。同じ辺があれば処理Ｒ３，Ｒ４，Ｒ５の反復を終了し、（１）の処理Ｒ１に戻って新たなチェックを行う辺を設定する。
【００３６】
（４）同じ辺がなければ自由辺であると判定し、処理Ｒ６で図形表示を行う。
【００３７】
（５）（１）〜（４）の処理Ｒ１〜Ｒ６の操作をすべての要素について繰り返す。
【００３８】
なお、３次元モデルの場合には、本処理の辺を要素の稜線に置き換えて同様の処理を行う。
【００３９】
１つの要素を構成する辺（稜線）の数がｌn で一定とするとき、本処理を行うための総反復数は次式で表される。
【００４０】
（ｅn ×ｌn ）2 ／２                                        （式１）
分割図が単一の要素形状からなるとき、２次元モデルの３，４角形要素、３次元モデルの４，５，６面体要素の総反復数は、（式１）より図１１の従来の欄のように計算される。
【００４１】
【発明が解決しようとする課題】
しかし、以上説明した従来の要素分割データ誤り検出方法を実行して、要素分割データの誤りを発見するには、各々以下のような問題があった。
【００４２】
前記（１）の方法では、最終的に自由辺をグラフィック端末、プロッタ等に出力して解析者自身がそれを目でみて判断する必要があるが、そのため表示装置が必要であった。また、解析者自身の判断がはいるため、見落しの可能性があった。特に、大規模要素分割データや解析領域中に微少寸法部分がある場合には、解析領域の大きさに対して辺の寸法が相対的に小さくなるため、そのような辺を確実に検出することは極めて困難であった。また有限要素法をよく知らない一般ユーザに本処理の意味を理解させるため、教育に時間を要した。
【００４３】
前記（２）の方法では、面積（体積）または重心の位置が異なっていた場合、どの要素に誤りがあるのかわからなかったため、誤りのある要素を捜し出すのに長時間の手間を要していた。また、後述するような致命的欠点も有した。
【００４４】
前記（５）の方法では、すべての要素についてチェックしなくてはならないため、長時間の手間を要した。しかも、要素が縮小化された要素分割図は基本的に２次元平面上にグラフィック表示されるため、３次元モデルには適用が困難であった。
【００４５】
また、完璧なチェックを行うためには、基本的に前記５つの方法すべてを実行する必要があり、長い計算時間と作業時間を要した。また上記５つの方法だけでは、いくつかのケースについて誤りを発見できない場合があった。このことを以下に簡単に説明する。
【００４６】
一般に図８，図９の（ａ）に示す、３角形（３角柱）要素を４角形（６面体）要素が含んでいるような場合、有効なのは前記方法のうち（２）と（５）の方法だけである。そして（２）の方法では、本要素ｅ1 〜ｅ3 の面積（体積）が、他の最も大きい要素に対して非常に小さい場合に問題となる。すなわち、これらの要素の体積または重量が、各要素の面積（体積）または重量を積算する過程で計算機中で桁落ちしてしまい、誤りを発見できない場合があった。これが（２）の方法の致命的欠点である。また（５）の方法では要素数がきわめて多い場合、または３次元的にはチェックが不可能であった。このことは、図８，図９の（ｂ）の誤りに対しても同様である。
【００４７】
また前記（１）による方法では、２次元モデルにおいては自由辺と解析モデルの外形線が１対１に対応しているため、誤り部分の位置を容易に知ることができたが、３次元モデルにおいては、外形線は必ずしも自由辺で表示されないため、誤り部分の位置を認識する過程でしばしば混乱を生じていた。このことを図１２を用いて以下に説明する。
【００４８】
図１２において要素ｅ1 ，ｅ2 はそれぞれ節点（ｎ1 ｎ2 ｎ3 ｎ5 ｎ6 ｎ7 ），（ｎ1 ｎ3 ｎ4 ｎ5 ｎ7 ｎ8 ）からなる３角形要素であり、破線部分すなわち節点ｎ1 ｎ5 は外形線である。外形線が１つの要素のみによって形成される場合はよいが、このように２つの要素に共有される場合には、本外形線は表示されず混乱を起こす。特に、外形線部分が本理由により表示されないことが多い予想分割図においては、要素の誤りが表示されてもどこの部分であるかわからず困っていた。
【００４９】
以上説明したように、従来例においては、要素分割データの誤りを検出するために、細心の注意と多大な労力を要したにもかかわらず、確実な誤り検出が困難であるという欠点があった。
【００５０】
本発明は以上の問題を鑑みてなされたものであり、上記要素分割データの誤りを容易に発見・分類し、一部については自動的に修正できるようにするものである。
【００５１】
【課題を解決するための手段】
上記課題を克服するために、本発明では以下の３つの項目をすべての節点についてチェックする。
（１）節点を取り巻く要素（以後、取巻要素と呼ぶ）の境界が、それぞれいくつの要素の境界となっているか。
（２）取巻要素の、節点まわりの角度の総和
（３）取巻要素の境界のうち、１つの要素だけからなる境界面を抽出したとき（本面を以後自由面と呼ぶ）、該自由面がすべて辺でつながっているか（３次元モデルの場合のみ）。
【００５２】
また、解析モデルの外形の最大角φmax と最小角φmin をチェックのための入力データとして使用する。
【００５３】
【作用】
上記３つの項目のうち（１），（２）それぞれによって、各節点の解析モデル中における位置を知る。そして、その２つの方法による結果が矛盾している場合、該節点によって構成される要素の一部に誤りがあると判断する。また、上記３項目の（３）で３次元モデルの外形の誤りを発見する。また、解析モデルの外形の最大角φmax と最小角φmin を入力データとして使用することにより、上記角度の範囲外の角度を有する外形線が発見された場合に、その部分を誤りとみなす。すなわち解析モデルに応じて誤りの判断基準を変えられるようにしたものである。
【００５４】
【実施例】
以下、本発明を一実施例を用いて詳細に説明する。
【００５５】
（実施例１）
本発明の実施例１として、２次元モデルに本発明を適用した場合について説明する。
【００５６】
図１〜図３は本実施例を説明する図である。図１は要素分割図の誤りを発見するための処理の流れ図である。図１の中で、Ｐ１，Ｐ２…等は処理を示し、ｎn は総節点数、ｒj ，ｒn は図３のテーブルの行数を示し、ｅn ，ｌi は図１０と同じく要素及び辺による反復数を示す。なお、図１では図１０の処理Ｒ１，Ｒ２等に相当する各反復における新しい要素設定処理と節点の設定処理とは省略した。図２，図３は、図１の処理の流れを具体的に説明するためのものである。図２は例としてあげた要素分割図、図３は図２の要素分割図において図１の処理Ｐ１で作成されるテーブルの作成過程を示す。図２，図３の中で、要素ｅ1 ，節点ｎ0 等は図８における要素ｅ1 ，節点ｎ0 と同じである。なお、図３のテーブルにおいて、節点ｎi ，ｎj の欄は、節点ｎ0 を構成節点に持つ要素ｅn の辺ｎ0 ｎi ，ｎ0 ｎj によって節点ｎ0 と直接つながっている節点の番号である。また辺ｎ0 ｎi ，ｎ0 ｎj の欄は、当該辺の登場回数を示す。図３に示す数値は図１におけるメモリに記憶される。
【００５７】
節点ｎ0 のまわりの要素分割図は、図１に示す要素分割図の誤りを発見する流れ図に示す過程でチェックする。
【００５８】
［処理Ｐ１］
処理Ｐ１では、図２に示す節点ｎ0 を取り巻く要素の境界線（以後、取巻辺と呼ぶ）がいくつの要素の辺であるかをカウントする。本操作は次に説明する処理を行い、図３のＰ１-(4)に示すテーブルを作成することにより行われる。
【００５９】
Ｐ１-(1)
節点ｎ0 を構成節点に持つ要素ｅ1 を抽出し、辺によってｎ0 と直接つながっている２節点の番号ｎ1 ，ｎ2 をｎi ，ｎj の欄に記憶する。また辺ｎ0 ｎ1 ，ｎ0 ｎ2 が１回登場したことを辺ｎ0 ｎi ，ｎ0 ｎj の欄に記憶し、図３のＰ１-(1)のテーブルを得る。
【００６０】
Ｐ１-(2)
節点ｎ0 を構成節点に持つ２番目の要素ｅ2 について、辺によってｎ0 と直接つながっている２節点の番号ｎ2 ，ｎ3 を新たにｎi ，ｎj の欄に追加する。そして辺ｎ0 ｎ2 ，ｎ0 ｎ3 がこれまでに登場しているかどうかを、これまでに本テーブルに記憶された要素、すなわちＰ１-(1)で記憶された要素ｅ1 について調べる（従って図１でｒj ＝１）。辺ｎ0 ｎ2 が１度登場しているので、それぞれ２，１として記憶する。このとき要素ｅ1 の辺ｎ0 ｎ2 の登場回数の欄も２に書き換える。これによって図３のＰ１-(2)のテーブルを得る。
【００６１】
Ｐ１-(3)
節点ｎ0 を構成節点に持つ３番目の要素ｅ3 について、辺によってｎ0 と直接つながっている２節点の番号ｎ3 ，ｎ4 を新たにｎi ，ｎj の欄に追加する。そして辺ｎ0 ｎ3 ，ｎ0 ｎ4 がこれまでに登場しているかどうかを、これまでに本テーブルに記憶された要素、すなわちｅ1 ，ｅ2 について調べる（ｒj ＝２）。辺ｎ0 ｎ3 がｅ2 の辺として１度登場しているので、それぞれ２，１として記憶する。このとき要素ｅ2 の辺ｎ0 ｎ3 の登場回数の欄も２に書き換える。これによって図３のＰ１-(3)のテーブルを得る。
【００６２】
Ｐ１-(4)
節点ｎ0 を構成節点に持つすべての要素について、上記操作を繰り返す。その結果、図３のＰ１-(4)を得る。なお図１中ｒn は最終的なテーブルの行数を示す（ここではｒn ＝５）。
【００６３】
［処理Ｐ２］
処理Ｐ２では、取巻要素の節点ｎ0 まわりの内角を加算し、総和φを求める。すなわち、図２における内角の総和φは次式となる。
【００６４】
φ＝φ1 ＋φ2 ＋φ3 ＋φ4 ＋φ5 （＝２π）                    （２）
なお、本内角を加算する過程は、図１に示すように処理Ｐ１と同じｅn の反復内で処理すると早く処理できる。
【００６５】
［処理Ｐ３］
処理Ｐ３では、処理Ｐ１で作成された図３のＰ１-(4)から取巻辺の登場回数（図３のＰ１-(4)の辺ｎ0 ｎi ，辺ｎ0 ｎj の欄）を調べ、次の４つに分類する。
（１）取巻辺の登場回数が“０”、すなわち、図３のＰ１-(4)に行がない（ｒn ＝０）。
（２）取巻辺の登場回数に“３”以上がある。
（３）取巻辺の登場回数が“１”のものがある。
（４）取巻辺の登場回数はすべて“２”。
【００６６】
なお、上記（３）に該当する場合、１回だけ登場する取巻辺の本数も同時にカウントする。
【００６７】
図２の要素分割図では（４）に該当する。
【００６８】
なお、本処理は上記（２）に相当する場合、反復を途中で抜けられるので、図１に示すように、図３のＰ１-(4)の行数ｒn までの反復で終了する。
【００６９】
［処理Ｐ４］
処理Ｐ４では、処理Ｐ３で行われた分類のうち（１）の場合を分岐させる。
【００７０】
巻取辺の登場回数が“０”（すなわち取巻辺がない）ということは、節点ｎ0 が浮遊節点であることを示す。従って処理Ｐ４１に行き、浮遊節点である旨のメッセージを出力し、次の節点のチェックに移る。
【００７１】
［処理Ｐ５］
処理Ｐ５は、処理Ｐ３で行われた分類のうち（２）の場合を分岐させる。
【００７２】
すなわち、“３”回以上登場する取巻辺があるということで、節点ｎ0 の取巻要素に重複したものがあるということを示す。図８（ａ）で説明した誤りは、図中黒丸で示した節点について本チェックを行うことにより発覚する（図８，図９における黒丸は誤りを発見できる節点を示す）。分岐して、処理Ｐ５１にて重複要素がある旨のメッセージを出力し、次の節点のチェックに移る。
【００７３】
［処理Ｐ６］
処理Ｐ６は、処理Ｐ３で行われた分類で（３）の場合を分岐させる。
【００７４】
すなわち、１回だけ登場する取巻辺があるということは、節点ｎ0 が解析モデルの外周上に位置し、１回だけ登場する取巻辺が外形線であることを示す。そこで処理Ｐ６１に移り、登場回数が“１”である取巻辺の数（処理Ｐ３にてカウント済み）をチェックし、それが“２”であることを確認する。“２”以外であるということは、図８（ｆ）に示すくびれがあることを示すので、この旨のメッセージを処理Ｐ６４にて出力し、次の節点のチェックに移る。
【００７５】
処理６４では、取巻辺の登場回数が“１”である巻取辺の数が２の場合は、次に処理Ｐ６２にて、節点ｎ0 の回りの内角の加算値φをチェックする。φが解析者の与えた解析モデルの外形の最大角φmax ，最小角φmin の範囲外の場合、図８（ｃ），（ｄ），（ｅ）で示す誤りがあることを意味し、その旨のメッセージを処理Ｐ６３にて出力し、次の節点のチェックに移る。
【００７６】
φが解析者の与えたデータの範囲内にある場合は、問題はないのでそのまま次の節点のチェックに移る。
【００７７】
［処理Ｐ７］
処理Ｐ７では、処理Ｐ３で行われた分類のうち（４）の場合を処理する。
【００７８】
すなわち、取巻辺の登場回数がすべて“２”であるということで、節点ｎ0 が解析モデルの内部に位置することを示す。そこで処理Ｐ７にて節点回りの内角の加算値が２π（ラジアン）であるかどうかを判定する。２πでない場合は、図８（ｂ）で示す誤りに相当するので、処理Ｐ７１にてその旨のメッセージを出力する。２πである場合は、問題はないのでそのまま次の節点のチェックに移る。図２の分割図の場合、本処理にて節点ｎ0 に関する要素に異常はないと判断される
。
【００７９】
以上、図１で説明した各処理Ｐ１〜Ｐ７の処理をすべての節点について繰り換えし処理する。
【００８０】
本処理において、１つの要素を構成する辺の数が１n で一定とするとき、総反復数は次式で近似される。
【００８１】
ｎn ×ｒn ×（ｅn ×１n ／２＋１）                            （３）
３角形要素において、ｎn をｅn ／２，ｒn を６、４角形要素においてｎn をｅn ，ｒn を４とすると、本式より要素分割図が３角形要素だけからなるとき（１n ＝３）、および４角形要素だけからなるとき（１n ＝４）の、本実施例による総反復数は図１１の２次元モデルの欄に示すようになる。
【００８２】
なお、処理Ｐ６２でφが解析者の与えたデータの範囲内にある場合、登場回数１の取巻辺は解析モデルの外形線を表わす。そこで本取巻線を図形表示しチェックすれば、一層確実なチェックを行うことができる。
【００８３】
また、ここでは要素分割図における各種の誤りを発見し、そのメッセージを出力するにとどめたが、以下の項目については自動的に修正することも可能である。
（１）処理Ｐ４１において、浮動節点のメッセージを出した節点を消去する。
（２）処理Ｐ５１において、重複要素のメッセージを出した節点、すなわち３回以上登場する取巻辺を持つ要素を表示し、解析者に該要素を消去してもよいかの質問を出し、よいならば消去する。
【００８４】
（実施例２）
以下、本発明の実施例２として、３次元モデルに本発明を適用した場合について説明する。
【００８５】
図４〜図７は本実施例を説明する図である。図４は要素分割図の誤りを発見するための処理の流れ図である。図４の中で、Ｑ１，Ｑ２等は処理を示し、ｒj ，ｒn は図６の行数を示す。ｌi は要素を構成する面の数を示し、ｎn ，ｅn は図１と同じ総節点数と総要素数を示す。なお、図１と同様、反復における新しい要素と節点の設定処理とは省略した。図５〜図７は図４の本処理の流れを具体的に説明するためのものである。図５は例としてあげた要素分割図、図６は図５の要素分割図において図４の処理Ｑ１で作成するテーブルの作成過程を示す。図５〜図７の中で、要素ｅ1 ，節点ｎ0 等は図９における要素ｅ1 ，節点ｎ0 と同じである。なお、図６のテーブルにおいて、節点ｎi ，ｎj ，ｎk の欄は、節点ｎ0 を構成節点に持つ要素ｅn の稜線によって節点ｎ0 と直接つながっている節点ｎi ，ｎj ，ｎk の番号である。また面ｎ0 ｎi ｎj ，ｎ0 ｎj ｎk ，ｎ0 ｎk ｎi の欄は当該面の登場回数を示す。なおここでは、３角錐，３角柱，６面体の形状をした要素に対応するチェックの例を説明し、４角錐の形状をした要素については考慮していない。図６に示す数値のテーブルは、図４におけるメモリに記憶される。
【００８６】
節点ｎ0 のまわりの要素分割は、図４に示す要素分割図の誤りを発見する流れ図に示す過程でチェックする。
【００８７】
以下、図４の各処理について説明する。
【００８８】
［処理Ｑ１］
処理Ｑ１では、図６に示す節点ｎ0 を取り巻く要素の境界面（以後、取巻面と呼ぶ）がいくつの要素の面となっているかをカウントする。本操作は次に説明する処理を行い、図６のＱ１-(4)に示すテーブルを作成することにより行われる。
【００８９】
Ｑ１-(1)
節点ｎ0 を構成節点に持つ要素ｅ1 を抽出し、稜線によって節点ｎ0 と直接つながっている３節点の番号ｎ1 ，ｎ2 ，ｎ6 をｎi ，ｎj ，ｎk の欄に記憶する。また、面ｎ0 ｎ1 ｎ2 ，ｎ0 ｎ2 ｎ6 ，ｎ0 ｎ6 ｎ1 が１回登場したことを面ｎ0 ｎi ｎj ，ｎ0 ｎj ｎk ，ｎ0 ｎk ｎi の欄に記憶する。図６のＱ１-(1)のテーブルを得る。
【００９０】
Ｑ１-(2)
節点ｎ0 を構成節点に持つ２番目の要素ｅ2 について、稜線によって節点ｎ0 と直接つながっている３節点の番号ｎ2 ，ｎ3 ，ｎ6 を新たにｎi ，ｎj ，ｎk の欄に記憶する。そして、面ｎ0 ｎ2 ｎ3 ，ｎ0 ｎ3 ｎ6 ，ｎ0 ｎ6 ｎ2 がこれまでに登場しているかどうかを、これまでに本テーブルに記憶された要素、すなわちＱ１-(1)で記憶された要素ｅ1 について調べる（従って図４でｒj ＝１）。面ｎ0 ｎ6 ｎ2 が１度登場しているので、それぞれ１，１，２として記憶する。このとき要素ｅ1 の面ｎ0 ｎ6 ｎ2 の登場回数の欄も２に書き換える。これによって図６のＱ１-(2)のテーブルを得る。
【００９１】
Ｑ１-(3)
節点ｎ0 を構成節点に持つ３番目の要素ｅ3 について、稜線によって節点ｎ0 と直接つながっている３節点の番号ｎ3 ，ｎ4 ，ｎ6 を新たにｎi ，ｎj ，ｎk の欄に記憶する。そして、面ｎ0 ｎ3 ｎ4 ，ｎ0 ｎ4 ｎ6 ，ｎ0 ｎ6 ｎ3 がこれまでに登場しているかどうかを、これまでに本テーブルに記憶された要素、すなわちｅ1 ，ｅ2 について調べる（ｒj ＝２）。面ｎ0 ｎ6 ｎ3 がｅ2 の面として１度登場しているので、それぞれ１，１，２として記憶する。このとき要素ｅ2 の面ｎ0 ｎ6 ｎ3 の登場回数の欄も２に書き換える。これによって図６のＱ１-(3)のテーブルを得る。
【００９２】
Ｑ１-(4)
節点ｎ0 を構成節点に持つすべての要素について、上記操作を繰り返す。その結果、図６のＱ１-(4)を得る。なお、図４中、ｒn は最終的なテーブルの行数を示す（ここではｒn ＝５）。
【００９３】
［処理Ｑ２］
処理Ｑ２では、取巻要素の該節点まわりの立体角を加算し、総和φを求める。すなわち、図５においてｎ0 に対して、面ｎ1 ｎ2 ｎ6 が作る角度をφ1 、面ｎ2 ｎ3 ｎ6 が作る角度をφ2 、面ｎ3 ｎ4 ｎ6 が作る角度をφ3 、面ｎ4 ｎ5 ｎ6 が作る角度をφ4 、面ｎ5 ｎ1 ｎ6 が作る角度をφ5 とそれぞれの立体角を定義するとき、それらの総和φは次式となる。
【００９４】
φ＝φ1 ＋φ2 ＋φ3 ＋φ4 ＋φ5                               （４）
なお、本立体角を加算する過程は、図４に示すように処理Ｑ１と同じｅn の反復内で処理すると早く処理できる。
【００９５】
［処理Ｑ３］
処理Ｑ３では、処理Ｑ１で作成された図５のＱ１-(4)から取巻面の登場回数を調べ、次の５つに分類する。
（１）取巻面の登場回数が“０”、すなわち、図５のＱ１-(4)に行がない（ｒn ＝０）。
（２）取巻面の登場回数に“３”以上がある。
（３）取巻面の登場回数がすべて“１”。
（４）取巻面の登場回数がすべて“２”。
（５）取巻辺の登場回数が“１”と“２”からなる。
【００９６】
図５の要素分割図の場合は、（５）に該当する。
【００９７】
なお、本処理は上記（２）に相当する場合、反復を途中で抜けられるので、図４に示すように、図５のＱ１-(4)の行数ｒn までの反復で終了する。
【００９８】
［処理Ｑ４］
処理Ｑ４では、処理Ｑ３で行われた分類のうち（１）の場合を分岐させる。
【００９９】
取巻面の登場回数が“０”（すなわち取巻面がない）ということは、節点ｎ0 が浮遊節点であることを示す。従って処理Ｑ４１に行き、浮遊節点である旨のメッセージを出力し、次の節点のチェックに移る。
【０１００】
［処理Ｑ５］
処理Ｑ５では、処理Ｑ３で行われた分類のうち（２）の場合を分岐させる。
【０１０１】
すなわち、３回以上登場する取巻面があるということで、節点ｎ0 の取巻要素に重複したものがあるということを示す。図９（ａ）で説明した誤りは、図中黒丸で示した節点について本チェックで行うことにより発覚する。分岐して、処理Ｑ５１にて重複要素がある旨のメッセージを出力し、次の節点のチェックに移る。
【０１０２】
［処理Ｑ６］
処理Ｑ６では、処理Ｑ３で行われた分類で（３）の場合を分岐させる。
【０１０３】
すなわち、取巻面の登場回数がすべて“１”であるということは、節点ｎ0 が図９（ｈ）に示すような、くびれに位置することを示す。従ってこの旨のメッセージを処理Ｑ６１で出力し、次の節点のチェックに移る。
【０１０４】
［処理Ｑ７］
処理Ｑ７では、処理Ｑ３で行われた分類で（４）の場合を分岐させる。
【０１０５】
すなわち、取巻面の登場回数がすべて“２”であるということは、節点ｎ0 の解析モデルの内部に位置することを示す。そこで、処理Ｑ７１にて、節点ｎ0 まわりの要素の立体角の加算値が４π（ラジアン）であるかどうかを判定する。４πでない場合は、図９（ｂ）の誤りに相当するので、処理Ｑ７２にてその旨のメッセージを出力する。４πである場合は問題はないので、そのまま次の節点のチェックに移る。
【０１０６】
［処理Ｑ８］
処理Ｑ８では、処理Ｑ３で行われた分類で（５）の場合を処理する。
【０１０７】
ここで、取巻面の登場回数が“１”と“２”からなるということは、節点ｎ0 が解析モデルの外周面上に位置することを示す。そして、１回だけ登場する取巻面が自由面である。そこで該自由面のつながりを以下の方法によりチェックして、要素分割図のデータ誤りを検出する。
【０１０８】
図７は節点ｎ0 に関連した自由面のつながりをチェックするテーブルを作成する過程を説明する図である。テーブル中、節点ｎi ，ｎj は図６における自由面のｎ0 を除く２節点の番号、辺ｎ0 ｎi ，ｎ0 ｎj は自由面の辺ｎ0 ｎi ，ｎ0 ｎj の登場回数、代表要素は該自由面を持つ要素の代表番号である。以下、図７に従って過程を説明する。
【０１０９】
Ｑ８-(1)
図６のＱ１-(4)の第１行目ｅ1 について、自由面があるかどうかを調べる。ここでは面ｎ0 ｎ1 ｎ2 がこれに該当するので、節点ｎ1 ｎj の欄に節点番号ｎ1 ，ｎ2 を記憶する。また辺ｎ0 ｎ1 ，ｎ0 ｎ2 の登場回数として１を辺ｎ0 ｎi ，ｎ0 ｎj の欄に記憶する。代表要素は本自由面を持つ要素の番号であるｅ1 を記憶する。これによって図７のＱ８-(1)を得る。
【０１１０】
もし他にも要素ｅ1 に自由面があれば、すべての自由面について、同様の処理を施す。
【０１１１】
Ｑ８-(2)
図６のＱ１-(4)の第２行目ｅ2 について、自由面があるかどうかを調べる。ここでは面ｎ0 ｎ2 ｎ3 がこれに該当するので、節点ｎi ，ｎj の欄に節点番号ｎ2 ，ｎ3 を追加する。次に、辺ｎ0 ｎ2 ，ｎ0 ｎ3 が本テーブルにこれまでに登場しているかどうかを、本テーブルに記憶されたすべての辺について調べる。辺ｎ0 ｎ2 は第１行目で１回登場しているので、２，１をそれぞれ辺ｎ0 ｎi ，ｎ0 ｎj の欄に記憶する。このとき第１行目の辺ｎ0 ｎ2 の欄も２に変更する。辺ｎ0 ｎ2 が要素ｅ1 の自由面の辺としてすでに登場していたということは、面ｎ0 ｎ2 ｎ3 が要素ｅ1 の自由面ｎ0 ｎ1 ｎ2 と辺ｎ0 ｎ2 でつながっていることを示す。そこで、代表要素には本ひとつながりの面の１番はじめの面を持つ要素の番号であるｅ1 を記憶する。これによって図７のＱ８-(2)を得る。
【０１１２】
Ｑ８-(3)
図６のテーブルＱ１-(4)の第３行目ｅ2 について、自由面があるかどうかを調べる。ここでは面ｎ0 ｎ3 ｎ4 がこれに該当するので、節点ｎi ，ｎj の欄に節点番号ｎ3 ，ｎ4 を追加する。次に、辺ｎ0 ｎ3 ，ｎ0 ｎ4 が本テーブルにこれまでに登場しているかどうかを、本テーブルに記憶されたすべての辺について調べる。辺ｎ0 ｎ3 は第２行目で１回登場しているので、２，１をそれぞれ辺ｎ0 ｎi ，ｎ0 ｎj の欄に記憶する。このとき第２行目の辺0 ｎ3 の欄も２に変更する。また上で述べたのと同様の理由により、面ｎ0 ｎ3 ｎ4 も要素ｅ1 の自由面ｎ0 ｎ1 ｎ2 とひとつながりであると考えられるので、代表要素には要素番号ｅ1 を記憶する。
【０１１３】
Ｑ８-(4)
図６のＱ１-(4)の、すべての自由面について、上記操作を繰り返す。その結果図７のＱ８-(4)を得る。
【０１１４】
［処理Ｑ９］
作成された図７のＱ８-(4)テーブルから自由面の辺ｎ0 ｎi ，ｎ0 ｎj の登場回数を調べる。
【０１１５】
登場回数が“２”以外の辺があるならば、該節点が図９（ｈ）に示すような、くびれに位置することを示す。従って、この旨のメッセージを処理Ｑ９１にて出力し、次の節点のチェックに移る。
【０１１６】
登場回数がすべて“２”であれば処理Ｑ９２に移り、図７のＱ８-(4)から代表要素がいくつあるかを調べる。代表要素が２種類以上ある場合、要素分割図は該節点によってくびれていることを示す。従って。この旨のメッセージを処理Ｑ９５にて出力し、次の節点のチェックに移る。
【０１１７】
処理Ｑ９２において代表要素が１種類の場合は、該節点回りの要素の立体角の加算値φを処理９３にてチェックする。φが解析者の与えた解析モデル外形の最大角φmax ，最小角φmin の範囲外の場合、図９（ｄ），（ｅ），（ｆ），（ｇ）の誤りがあることを示すので、その旨のメッセージを処理Ｑ９４にて出力し、次の節点のチェックに移る。
【０１１８】
φが解析者の与えたデータの範囲内にある場合は、問題はないのでそのまま次の節点のチェックに移る。
【０１１９】
以上、図４で説明した処理Ｑ１〜Ｑ９の処理をすべての節点について繰り換えし施す。
【０１２０】
本処理において、１つの要素を構成する面の数がｌn で一定とするとき、総反復数は次式で近似される。
【０１２１】
ｎn ×ｒn ×（ｅn ×ｌn ／２＋４）                            （５）
４面体要素においてｎn をｅn ／６，ｒn を１６、５面体要素においてｎn をｅn ／２，ｒn を１２、６面体要素においてｎn をｅn ，ｒn を８とすると、本式より要素分割図が各単一形状の要素だけからなるとき、本実施例による総反復数は図１１の３次元モデルの欄ようになる。
【０１２２】
なお、実施例１と同様に、処理Ｑ９３で、φが解析者の与えたデータの範囲内にある場合、登場回数“１”の取巻面は解析モデルの外周を表わす。そこで本取巻面を図形表示してチェックすれば、一層確実なデータ誤り検出を行うことができる。
【０１２３】
また、ここでは要素分割図における各種の誤りを発見し、そのメッセージを出力するにとどめたが、以下の項目については自動的に修正することも可能である。
（１）処理Ｑ４１において、浮遊節点のメッセージを出した節点を消去する。
（２）処理Ｑ５１において、重複要素のメッセージを出した節点、すなわち３回以上登場する取巻面を持つ要素を表示し、解析者に該要素を消去してもよいかの質問を出し、Ｙｅｓならば消去する。
【０１２４】
また、ここでは４角錐を除く要素に限定したデータ誤り検出法について示したが、４角錐を含んだ場合にも、図６で作成するテーブルの欄を１つ増すことにより容易に対応できる。
【０１２５】
尚、本実施例の図１及び図４のフローチャートは本発明を実現する一例であって、特に要素の境界による分岐と内角の和に基づく分岐の手順の前後は、本例に限定されない。又、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。
【０１２６】
【発明の効果】
以上の説明から明らかなように、本発明により、解析者の負担を少なくして誤りを容易に発見・分類し、一部については自動修正できるチェック時間の短縮された有限要素分割図のデータ誤り検出方法を提供できる。
【０１２７】
更に詳細には、以下の効果がある。
（１）グラフィック端末，プロッタ等の図形表示装置が不要となる。
（２）解析者の判断が入らないため、見落としによる検出ミスがなくなる。
（３）すべての過程が自動的に行われるため、有限要素をよく知らない一般ユーザへの教育が不要。また、チェックに要する手間がかからなくない。
（４）一部の誤りについて自動的に修正することが可能となる。
（５）３次元モデルに対しても容易に対応できる。
（６）従来のデータ誤り検出方法では発見できなかった誤りが発見できる。
【０１２８】
また、図１１からわかるように、処理に要する計算時間は、従来の方法（１）だけを行った場合と比較しても、ほとんど変わらないかそれ以下である。従来の５つの方法すべてを行った場合と比較すると、格段に少ない計算時間でチェックを行うことができる。
【図面の簡単な説明】
【図１】本発明の実施例１の流れを説明するためのフローチャートである。
【図２】本発明の実施例１の処理の流れを具体的に説明するための要素分割図である。
【図３】本発明の実施例１の処理の流れを具体的に説明するための図である。
【図４Ａ】本発明の実施例２の流れを説明するためのフローチャートである。
【図４Ｂ】本発明の実施例２の流れを説明するためのフローチャートである。
【図５】本発明の実施例２の処理の流れを具体的に説明するための要素分割図である。
【図６】本発明の実施例２の処理の流れを具体的に説明するための図である。
【図７】本発明の実施例２の処理の流れを具体的に説明するための図である。
【図８】２次元モデルにおける分割図の誤り例を示す図である。
【図９】３次元モデルにおける分割図の誤り例を示す図である。
【図１０】従来の２次元モデルにおける要素分割データ誤りを検出するためのアルゴリズムおよび問題点を説明するフローチャートである。
【図１１】データ誤り検出に関する反復回数を従来法と本発明とで比較した図である。
【図１２】従来の要素分割データ誤り検出方法の処理の流れおよび問題点を説明するための図である。
【符号の説明】
ｎn   総節点数
ｅn   総要素数
ｌi   要素を構成する辺（面）の数
ｒj ，ｒn   作成したテーブルの行数
Ｐ１，Ｐ２…  ２次元モデルの要素分割をチェックする処理
Ｑ１，Ｑ２…  ３次元モデルの要素分割をチェックする処理
Ｒ１，Ｒ２…  ２次元モデルの要素分割をチェックする処理
ｎ0 ，ｎ1 ，…，ｎi ，ｎj   節点番号
ｅ1 ，ｅ2 …  要素番号
φ1 ，φ2 …  要素の内角
【図１】
0004054386.tif 000002
【図２】
0004054386.tif 000003
【図３】
0004054386.tif 000004
【図４Ａ】
0004054386.tif 000005
【図４Ｂ】
0004054386.tif 000006
【図５】
0004054386.tif 000007
【図６】
0004054386.tif 000008
【図７】
0004054386.tif 000009
【図８】
0004054386.tif 000010
【図９】
0004054386.tif 000011
【図１０】
0004054386.tif 000012
【図１１】
0004054386.tif 000013
【図１２】
0004054386.tif 000014