EMSolutionでは境界条件を設定する際に,Bn=0やHt=0等の面指定による入力以外は,周期対称面や遠方境界(Far boundary)を内部で自動認識する方法を採用しております。 境界面をメッシュ内に面要素や節点で指定する必要が無いため便利な機能といえますが, "スライド法における形状データ精度の影響"にありますように,メッシュ誤差がある場合,周期境界面として認識されず結果も正しいものが得られなくなる場合があります。 ある程度のメッシュ誤差を許容するため,DISTANCE_JUDGEパラメータを判別値として指定面上や周期境界面上に節点が乗っているかの判断を行っています。 しかし,それらの設定によって,周期境界面が意図したとおりに設定されているかの出力情報が乏しく, 計算結果を見て判断して頂くというのがこれまでの実際の確認方法となっておりました。この度,確実な確認手段として境界面として認識されたものを面要素として出力する機能を追加しました。 加えて,周期境界面上の節点数と辺数もoutputファイルに出力するようにもしました。
Fig.1に示す,"スライド法における形状データ精度の影響"で使用したモデルを用いて説明します。本モデルはスライド面上の節点を回転軸であるZ軸周りに意図的に0.1度ずらし,DISTANCE_JUDGE=0.0001として回転周期対称条件が適用されないようにしています。これを境界面の面要素出力機能を用いて出力された面要素をFig.2に示します。これより,意図的にずらした節点を含む面は周期境界面ではなく,遠方境界面として認識されてしまっていることが確認できます。
outputファイルに出力されるようになった周期境界面上の節点数「on periodic face」も,98と本来の112から減っていることからも確認できます。Fig.3に,DISTANCE_JUDGE = 0.01とした場合の境界面要素を示します。DISTANCE_JUDGEを0.1度のずれよりも大きくしたことで,周期境界面が正しく認識されていることが確認できます。
なお,スライド面はスライド辺を運動方向に回転させ,同一面上に節点が乗っている場合にスライド面と判別していますので,今回の回転運動の0.1度のずれの場合では同一面上にあるため,スライド面と認識されています。
遠方境界面と認識されてしまう理由は,EMSolutionでは抽出した全体メッシュの外側の面から境界条件が指定されている面を除いていき,残った境界面に遠方境界条件を設定していることによります。そのため,周期境界面によらずBn=0等の対称境界面上の節点にも誤差がある場合,遠方境界条件として設定されてしまう場合があります。このような問題を防ぐには,メッシュ精度を上げるのが一番ですが,Fig.3に示したようにDISTANCE_JUDGEを少し大きな値にして対応できる場合もあります。しかし,例えば表皮効果を考慮するためにメッシュを細かくして最小節点間距離が小さいモデルにおいて,境界面にその最小節点間距離よりも大きな誤差がある場合は,メッシュ精度を上げて対応しなければなりません。もしDISTANCE_JUDGEを最小節点間距離よりも大きくしてしまうと,本来別々の節点であるものが同一節点として認識され,要素がつぶれてしまう等の問題となりますのでご注意下さい。
本機能は,メッシュが不整合で作成されている場合のチェックとしても有用です。簡単な例として,Fig.4に示すメッシュで検証します。本メッシュは意図的にメッシュ分割数を変えている箇所と,二重節点としている箇所があります。これらの個所は面が接合しないため,境界面として認識され,遠方境界条件が適用されてしまいます。このような場合に,Fig.5に示す境界面の出力機能で確認することで,メッシュの不具合を解決できると考えられます。本計算実行前の確認作業としてお使いいただければと思います。
"180度回転周期解析における不具合について"にありますように,EMSolutionバージョンr10.2.2以降では180度回転周期対称条件において,「メッシュが Y>0で作成され,周期境界面の一方が X>0 ,もう一方が X<0 にあり,スキューなどにより周期境界面が+90度を超えていないモデル」という制限付きで応急処置的に対応しておりました。180度回転周期境界のモデル,例えばFig.6に示す誘導電動機の場合,スキューしていたとしてもメッシュが上記条件を満足するようにFig.6(b)のように定義されていれば問題なく計算できました。しかし,Fig.4(c)のように一方の周期境界面が X<0 と X>0 両方にまたがって作成されている場合,上記制限を一部超えてしまうため,周期境界面が正しく認識されないという問題がありました。そこで,EMSolutionバージョンr11.1.1より,180度回転周期対称条件を設定する場合,新たなオプションとしてSEPARATE_ANGLEを必須入力項目として明示的に周期境界面を分離するように指定することで,この問題に対処いたしました。
理由として,EMSolutionでは複雑な周期対称面を自動認識するために,周期境界面の候補となる節点を,周期対称長さで移動,もしくは周期対称角度で回転させたときに一致するものがあると周期対称面と認識します。これは,並進周期対称や180度未満の回転周期対称では正しく認識できますが,180度回転周期対称では,候補となる二面どちらを回転させても一致する相手がいるという不整合がおきるため,上記のような制限を設けていたのですが,それを改善し,SEPARATE_ANGLEを使用して分離することにいたしました。
例として,Fig.6(b)の場合,スキューは1ロータスロットの約5.295度ですので,メッシュ定義位置から周期境界面を分離できる角度は 5.295度 < SEPARATE_ANGLE < 174.705度 となり,その間であれば何度でも構いません。本例ではわかりやすく SEPARATE_ANGLE = 90度 としています。 Fig.6(c)の場合で同様に考えると,ロータ側は 95.295度 < SEPARETE_ANGLE < 264.705度 となり,ステータは 0度 < SEPARATE_ANGLE < 180度 で定義されているので,両方の境界面を分離できるSEPARATE_ANGLE = 120度 としています。 この指定により180度回転周期対称条件が正しく認識され,正常に計算されるようになります(r10.2.2~r11.0.1までは, SEPARATE_ANGLE = 90度 と指定した場合と同等となっておりました)。
なお,SEPARATE_ANGLEはメッシュ定義位置によらず,X軸からの角度を指定し,ステータ(pre_geom),ロータ(rotor_mesh)共に適用されます。そのため,SEPARETE_ANGLEはメッシュ定義位置(節点の座標)に適用されますので,SEPARATE_ANGLEの指定内にステータとロータのメッシュ定義位置が来るように作成してください(ロータの初期位置は時間関数で位置変更できます)。また,スキュー等によりメッシュ全体で360度を超えるモデル(180度以上スキューされるモデル)では,本機能でも180度回転周期対称条件は設定できませんので,360度モデルで解析してください。SEPARATE_ANGLEの指定が正しいかは,先の境界面の面要素出力機能で周期境界面を確認して頂ければと思います。
この先は会員の方のみご覧いただけます。
©2020 Science Solutions International Laboratory, Inc.
All Rights reserved.