関数によるMAGNETの磁化入力
| | October 13, 2006 |
EMSolutionでは、磁石の有限要素モデルとしてMAGNETを用意しております。磁石の磁化分布が一様でない場合は、磁石を細分してそれぞれにプロパティを設定し磁化ベクトルを与える、または、要素ごと磁化ベクトルを与えます。しかし、データ量が多く煩雑になるため、入力に時間を要したり、入力ミスが生じたりする可能性がありました。この度、磁化分布を正弦波の組み合わせで表す正弦関数入力と、数式で表す数式入力により設定する機能を追加しましたので報告いたします。
正弦関数入力の対象とする磁化配向は、Fig.1 (a)に示すリング磁石のラジアル配向(円筒座標系における径方向)及び(b)に示す平行配向(直交座標系における任意の方向)の二種類が可能です。数式入力では、任意の磁石形状に対して適用することができます。
 |  |
| (a) ラジアル配向 | (b) 平行配向 |
| Fig. 1 リング磁石 |
以下、正弦関数入力について説明します。このとき、XYZ全体座標系に対し、ラジアル配向に対しては、r
z局所座標系を、平行配向に対しては、xyz局所直交座標をFig. 1のように定義します。Fig.1 (a)に示される円筒座標系でのラジアル配向の場合、磁化の径方向(r方向)成分Mrの角度方向(
方向)の分布を(1)式のように正弦関数のフーリエ級数として表されるとします。一般的には、磁化分布が対称となる奇数次高調波が使用されます。
(1)
ここで、Mrsは基準磁化[T]、kは高調波次数、kmaxは最大高調波次数、bkはk次の基準磁化により規格化された振幅、mは磁極数を表します。角度
0は円筒座標系での基準角度であり、磁化が反転する位置(磁極間)に相当します。
は円筒座標系での要素中心の角度であり、要素内では磁化は一定とします。
mは一周2
に対する極数で、m/2は周期数を表します。
Fig. 1 (b)の平行配向の場合は、(2)式のように表されます。基準磁化Msは、それぞれの物性領域の局所直交座標で表される定ベクトルとします。
はx軸からの角度を表します。
(2)
例題1として、Fig. 1のモデルに磁化分布を設定した解析を示します。計算条件は、基準磁化Ms =1.0 T、基本波成分のみの最大高調波次数kmax =1、その振幅b1=1、極数m=4とします。また、磁石の比透磁率は1.02、ヨークの比透磁率は1000、外側は空気としています。Fig.1の配置では、局所座標のx軸方向を全体直交座標のx軸方向とすると、基準角度
0=
/4となります。
Fig. 2に、与えられた磁化Mrと解析された磁石外側表面の磁束密度Brの波形を示します。ラジアル配向の場合、正弦波に近い磁石外側表面の磁束密度波形が、平行配向の場合、磁極間に歪みのある磁束密度波形が得られていることがわかります。また、磁化分布「magnetization」と磁束密度分布「magnetic」をFig. 3に示します。
 |  |
| (i) ラジアル配向 | (ii) 平行配向 |
| Fig. 2 最大高調波次数の磁化波形と磁石外側表面での磁束密度波形 |
 |  |
| (i) ラジアル配向 | (ii) 平行配向 |
| (a) 磁化分布 (magnetization) |
|
 |  |
| (i) ラジアル配向 | (ii) 平行配向 |
| (b) 磁束密度分布 (magnetic) |
|
| Fig. 3 最大高調波次数1の磁化分布と磁束密度分布 |
次に例題2として、Fig. 1(a)のラジアル配向リング磁石モデルで、Mrs=1.0T、 kmax=5、b1=1.0、b3=0.25、b5=0.05とします。Fig. 4に、磁化波形と解析で得られた磁石外側表面の磁束密度波形を示します。高調波成分を含んだ磁化分布にしたがって磁場分布が変わってくることがわかります。
Fig. 4 最大高調波次数5の磁化波形と磁石外側表面での磁束密度波形
(ラジアル配向)
使用法
磁化分布を関数入力として与えるためには、MAGNETの入力項目である、INPUT_TYPEオプションを2:正弦関数入力、3:数式入力と設定します。
| * MAGNET | * SERIES_ID | * TIME_ID | * NO_MAT_IDS | * INPUT_TYPE* |
| MAGNET | 1 | 1 | 4 | 2 or 3 |
以下、例題2で示した条件を入力例として使用します。なお、MAT_IDはFig. 1に示した通りです。
<正弦関数入力:INPUT_TYPE=2>
正弦関数入力では、 (1)式、または(2)式を使用します。(1)、 (2)式では奇数次成分のみで表していますが、入力としては偶数次成分にも対応しております。
まず、正弦関数の入力を行います。高調波次数の数のNO_ORDERS、極数mのNO_POLESAを入力し、基準角度
0のANGLE(deg)は単位degで入力します。その次に、高調波次数kのORDER、その振幅bkのAMPLITUDEをNO_ORDERSの数だけ設定します。
| * MAGNET | * SERIES_ID | * TIME_ID | * NO_MAT_IDS | * INPUT_TYPE
* |
| MAGNET | 1 | 1 | 4 | 2 |
| * NO_ORDERS | * NO_POLES | * ANGLE(deg) * |
| 3 | 4 | 45. |
| * ORDER | * AMPLITUDE * |
| 1 | 1.0 |
| 3 | 0.25 |
| 5 | 0.05 |
そして次に、入力した正弦関数を割り当てるMAT_ID、磁化方向を定義する座標のCOORD_ID、基準磁化MsをNO_MAT_IDS分入力します。
ラジアル配向
局所円筒座標系を定義して使用しますので、ここでは各MAT_IDに対し、そのIDとしてCOORD_ID=1を指定し、局所円筒座標系の基準磁化を、(MR、MT、MZ)=(1.0、0.0、0.0)と入力します。ここでは、各MAT_IDに対して同じ座標系を用いていますが、それぞれに対して異なった座標系を用いても構いません。MT
0.0またはMZ
0.0とすれば、円筒座標系での任意の方向に基準磁化ベクトルを設定することができます。
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | * MZ * |
| 101 | 1 | 1.0 | 0.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | * MZ * |
| 102 | 1 | 1.0 | 0.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | * MZ * |
| 103 | 1 | 1.0 | 0.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | * MZ * |
| 104 | 1 | 1.0 | 0.0 | 0.0 |
ここで、局所円筒座標系のCOORD_ID=1は、COORDINATE設定カラムで以下のように定義されています。TYPE=2は円筒座標系を表し、ここではEX_X=1と定義することにより、局所円筒座標系における角度ゼロの径方向を全体直交座標系のx軸方向に一致させています。
| * COORDINATE | * NO_COORDINATES * |
| COORDINATE | 1 |
| * COORD_ID | * TYPE | * X0 | * Y0 | * Z0 * |
| 1 | 2 | 0 | 0 | 0 |
| * | * EX_X | * EX_Y | * EX_Z * |
| | 1 | 0 | 0 |
| * | * EZ_X | * EZ_Y | * EZ_Z * |
| | 0 | 0 | 1 |
平行配向
定義する座標系は直交座標系ですので、ここでは各MAT_IDに対し、全体直交座標系のIDのCOORD_ID=0を指定します。磁極中心を全体直交座標でのx軸とするMAT_ID=101には、x軸正方向磁化ベクトルM(x,y,z)=(1,0,0)と設定します。その他のMAT_ID=102、
103、104では、磁化方向ベクトルをそれぞれ、y軸正方向=(0,1,0)、x軸負方向=(-1,0,0)、y軸負方向=(0,-1,0)と一周分設定します。
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | *MZ* |
| 101 | 0 | 1.0 | 0.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | *MY (MT) | * MZ * |
| 102 | 0 | 0.0 | 1.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | * MY (MT) | * MZ * |
| 103 | 0 | -1.0 | 0.0 | 0.0 |
| * MAT_ID | * COORD_ID | * MX(MR) | *MY (MT) | * MZ * |
| 104 | 0 | 0.0 | -1.0 | 0.0 |
<数式入力:NPUT_TYPE=3>
数式入力では、磁化M(x,y,z)の各成分MX、MY、 MZを数式で与えます。数式入力で使用できる関数等の詳細については、EMSolution Handbook「Appendix1数式入力」を参照してください。
数式入力の場合、磁化を定義する座標系と磁石形状が一致しますので、任意形状の磁石に磁化分布を与えることができます。まず、磁化分布関数を入力します。ここで入力する数式は、(2)式中の基準磁化Msを含む関数となります。
そして次に、入力した磁化分布関数を割り当てるプロパティIDのMAT_IDと、磁化方向を定義する座標IDのCOORD_IDをNO_MAT_IDS分入力します。
ラジアル配向
局所円筒座標系の磁化を数式で入力します。なお、MX、MYはMR、MTに、yは
対応しており、ここではMRに設定しています。すべてのMAT_IDは同じ磁化分布関数を使用しますので、次に割り当てるMAT_IDと磁化を定義する座標IDをNO_MAT_IDS回繰り返し入力します。なお、局所円筒座標系を定義して使用しますので、ここでは各MAT_IDに対し、そのIDとしてCOORD_ID=1を指定しています。ここで、PI=
は予約変数です。
| * MAGNET | * SERIES_ID | * TIME_ID | * NO_MAT_IDS | * INPUT_TYPE * |
| MAGNET | 1 | 1 | 4 | 3 |
| * FUNCTION MX(x,y,z) * x(m) or x(m) * |
| MX(x,y,z)=sin(2*(y-(PI/4)))+0.25*sin(6*(y-(PI/4)))+0.05*sin(10*(y-(PI/4)));; |
| * FUNCTION MY(x,y,z) * y(m) or y(rad) * |
| MY(x,y,z)=0;; |
| * FUNCTION MZ(x,y,z) * z(m) or z(m) * |
| MZ(x,y,z)=0;; |
| * MAT_ID | * COORD_ID * |
| 101 | 1
|
| * MAT_ID | * COORD_ID * |
| 102 | 1
|
| * MAT_ID | * COORD_ID * |
| 103 | 1
|
| * MAT_ID | * COORD_ID * |
| 104 | 1 |
平行配向
平行方向に分布を持たせたるには、数式入力で角度
を定義し、入力数式に与える必要があります。さらに、磁化分布関数は、各MAT_IDに対し、磁化成分と符号が異なりますので、各MAT_IDに対し、入力する磁化成分Mx、My、Mzを数式でNO_MAT_IDS回繰り返し入力します。なお、定義する座標系は直交座標系ですので、ここではMAT_ID全てに、全体直交座標のIDのCOORD_ID=0を指定しています。
を変数theta(x,y)として定義しています。
| * MAGNET | * SERIES_ID | * TIME_ID | * NO_MAT_IDS | * INPUT_TYPE* |
| MAGNET | 1 | 1 | 4 | 3 |
| *FUNCTION MX(x,y,z) * x(m) or x(m) * |
| theta(x,y) = atan2(y,x); |
| MX(x,y,z)=sin(2*(theta(x,y)-(PI/4)))+0.25*sin(6*(theta(x,y)-(PI/4)))+0.05*sin(10*(theta(x,y)-(PI/4)));; |
| *FUNCTION MY(x,y,z) * y(m) or y(rad) * |
| MY(x,y,z)=0;; |
| *FUNCTION MZ(x,y,z) * z(m) or z(m) * |
| MZ(x,y,z)=0;; |
| MAT_ID | * COORD_ID * |
| 101 | 0 |
| *FUNCTION MX(x,y,z) * x(m) or x(m) * |
| MX(x,y,z)=0;; |
| *FUNCTION MY(x,y,z) * y(m) or y(rad) * |
| theta(x,y) = atan2(y,x); |
| MY(x,y,z)=sin(2*(theta(x,y)-(PI/4)))+0.25*sin(6*(theta(x,y)-(PI/4)))+0.05*sin(10*(theta(x,y)-(PI/4)));; |
| *FUNCTION MZ(x,y,z) * z(m) or z(m) * |
| MZ(x,y,z)=0;; |
| MAT_ID | * COORD_ID * |
| 102 | 0 |
| *FUNCTION MX(x,y,z) * x(m) or x(m) * |
| theta(x,y) = atan2(y,x); |
| MX(x,y,z)=-sin(2*(theta(x,y)-(PI/4)))+0.25*sin(6*(theta(x,y)-(PI/4)))+0.05*sin(10*(theta(x,y)-(PI/4)));; |
| * FUNCTION MY(x,y,z) * y(m) or y(rad) * |
| MY(x,y,z)=0;; |
| * FUNCTION MZ(x,y,z) * z(m) or z(m) * |
| MZ(x,y,z)=0;; |
| * MAT_ID | * COORD_ID * |
| 103 | 0 |
| * FUNCTION MX(x,y,z) * x(m) or x(m) * |
| MX(x,y,z)=0;; |
| *FUNCTION MY(x,y,z) * y(m) or y(rad) * |
| theta(x,y) = atan2(y,x); |
| MY(x,y,z)=-sin(2*(theta(x,y)-(PI/4)))+0.25*sin(6*(theta(x,y)-(PI/4)))+0.05*sin(10*(theta(x,y)-(PI/4)));; |
| * FUNCTION MZ(x,y,z) * z(m) or z(m) * |
| MZ(x,y,z)=0;; |
| MAT_ID | * COORD_ID * |
| 104 | 0 |
ここでは、直交座標系として全体直交座標を用いたため、各MAT_IDでは異なる磁化分布となっていますが、各MAT_IDに対して適切な局所直交座標を定義すれば、全てのMAT_IDで同じ分布関数を使用することもできます。また、棒状の磁石に磁化分布を与えたい場合は、直交座標系を使用し、磁化分布関数をx,y,zの関数と入力すれば可能です。
使用データ:
input_radial_sin:ラジアル配向、正弦関数入力、最大次数1のinputファイル(最大次数5の条件はコメントアウトされている)
input_radial_eq:ラジアル配向、数式入力、最大次数1のinputファイル
input_parallel_sin:平行配向、正弦関数入力、最大次数1のinputファイル
input_parallel_eq:平行配向、数式入力、最大次数1のファイル
pre_geom2D.neu:二次元メッシュファイル