Skip to content

GRGSIBERIA/electromotive

Repository files navigation

ELECTROMOTIVE

ELECTROMOTIVEはAbaqusで出力した節点の変位データのRPTファイルをもとに誘導起電力をシミュレーションするシステムです.ソルバは磁気単極子を仮定し,円筒形棒磁石の磁極表面と磁子からなる鎖交磁場の磁束密度を求めることで,ファラデーの電磁誘導の法則より誘導起電力をシミュレーションします.RPTファイルは時刻歴データであるため,振動体によって時々刻々と変化する鎖交磁場をシミュレーションし,誘導起電力を音声ファイルとして出力できます.

Python版

設定ファイルの準備

設定ファイルはJSON形式で記述します.マークアップの仕方には一定のルールがあります.サンプルを以下に示します.

{
    "config": {
        "solver": "cone",
        "csv": "./data/output/dump.csv",
        "sampling rate": 20000
    },
    "tine": {
        "type": "element",
        "input": "./data/tine.inp",
        "report": "./data/tine.rpt",
        "magnetic permeability": 1.0
    },
    "tonebar": {
        "type": "element",
        "input": "./data/tonebar.inp",
        "report": "./data/tonebar.rpt",
        "magnetic permeability": 1.0
    },
    "magnet": {
        "type": "magnet",
        "input": "./data/magnet.inp",
        "report": "./data/magnet.rpt",
        "top": {
            "center": 2,
            "right": 3
        },
        "bottom": {
            "center": 6,
            "right": 7
        },
        "magnetic charge": 1,
        "wav": "./data/vibration.wav"
    }
}

configセクション

configセクションでは,出力や入力の設定を記述するためのセクションです.3つの設定ができます.

設定 説明 要否
solver 解析ソルバを選択します.解析ソルバにはいくつか種類が用意されています. 必須
csv CSVファイルの出力パスを指定します. 任意
sampling rate RPTファイルのサンプリング周波数を指定します.RPTファイルはすべてこのサンプリング周波数に従っていなければなりません. 必須

解析ソルバ

解析ソルバには何種類か用意があります.

coneソルバ

最も推奨するソルバです.円筒形棒磁石の磁極表面と磁子からなる領域が直円錐であると仮定し,鎖交磁場の磁束密度が直円錐の体積に近似することを利用します.

integrateソルバ

近似計算をせずに,円筒形棒磁石の磁極表面の領域について重積分で磁束密度を計算します.最も計算に時間がかかりますが,厳密解を求めることができます.

nablaソルバ

磁気単極子の基礎方程式を厳密に解釈して計算します.coneソルバと計算の仮定は変わりありません.

rectソルバ

矩形棒磁石について計算するソルバです.計算が正しいのか不明であるため非推奨です.

振動体セクション

振動体セクションでは,振動体の設定について記述するセクションです.振動体セクションのキーには任意の名前が使用できます.振動体はtypeキーワードに指定した内容で解釈されて実行されます.

共通の設定

すべて必須です.

キーワード 説明
input AbaqusのINPファイルのパスを指定します.ただし,INPファイルについては一定の加工が必要です.
report Abaqusで出力したRPTファイルのパスを指定します.必ず単一のパートで出力してください

element型

typeキーワードにelementを指定すると,振動体として解釈されて実行されます.element型で使用できるキーワードとしてmagnetic permeabilityがありますが,これは振動体の磁気定数です.一般的にこの磁気定数は不明であるため,1.0を推奨します.

magnet型

typeキーワードにmagnetを指定すると,磁石として解釈されて実行されます.

magnetic chargeは磁石の磁場強度です.単位はAbaqusの単位系によりますがテスラになっています.必須です.

topbottomキーワードは必須です.このキーワードは磁石の上面と下面の節点番号を指定することになっています.さらに,centerキーワードは磁極中心,rightは磁極右手方向の節点番号を指定します.

wavキーワードは必須で,WAVファイルを出力するパスを指定します.

INPファイルの準備

INPファイルはAbaqusでジョブを実行する際に利用する入力ファイルです.解析に必要な様々な情報が記載されています.このINPファイルのうち必要な情報だけ抜き出して利用します.抜き出し方を説明します.

INPファイルはジョブの入力データを書き出すことで作成されます.書き出されたINPファイルのうち,NodeセクションとElementセクションに記述されている内容だけを抽出します.

*Node
      1,           0.,  -2.94000006,         12.5
      2,           0.,           0.,         12.5
      3,  -2.94000006,           0.,         12.5
      4,           0.,  -2.94000006,           0.
      5,  -2.94000006,           0.,           0.
~中略~
*Element, type=C3D10
 1,  17,  12,  13,  51,  64,  63,  62,  66,  65,  67
 2,  12,  52,  17,  16,  69,  68,  64,  71,  70,  72
 3,  15,  11,   4,  18,  75,  74,  73,  77,  76,  78
 4,  51,  52,  17,  12,  79,  68,  66,  65,  69,  64
 5,  52,  18,  51,  17,  81,  80,  79,  68,  82,  66

NodeとElementはパートごとに作成されます.INPファイルをパートごとに分けて作成します.仮に上記のファイルをmagnet.inpとして保存します.

もし,アセンブリでインスタンスを移動していたら,移動している量を以下のように記述します.

*Translate
          6.,       -29.94,      -135.25

現在は対応していませんが,TranslateセクションのあとにRotateセクションも記述できます.TranslateセクションのあとにRotateセクションを記述するように,順番は遵守してください.

RPTファイルの準備

RPTファイルはAbaqusの解析結果を記述したテキストデータです.Abaqusでの出力方法を説明します.

RPTファイルの出力は,結果表示モジュールでメニューバーの「レポート-XY」を選択し,XYデータのレポートウィンドウを開きます.XYデータのレポートウィンドウでは,選択したXYデータの時刻歴をRPTファイルで出力する機能があります.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages