.. _10_2_Output_Files:

##################################
**10.2 出力ファイル**
##################################

出力する物理量の条件を設定します。

---------------------
設定項目
---------------------
:paramdef:`10_2_Output_Files`    JSONキー：出力ファイルオブジェクト

:paramdef:`POST_DATA_FILE(10.2)`    出力データファイル形式の指定

:paramdef:`ELEM_OUT(10.2)`    要素量出力オプション

:paramdef:`NODE_OUT(10.2)`    節点量出力オプション

:paramdef:`NUMBER_OUTPUT_MATS(10.2)`    ファイル出力する物性番号(16)の数

:paramdef:`MAT_ID_NOS(10.2)`    ファイル出力する物性番号

:paramdef:`OUTPUT_MATS(10.2)`    JSONフォーマットでのファイル出力する物性番号オプション

:paramdef:`AVERAGE(10.2)`    HEATとIRON_LOSSで使用される時間平均オプション

:paramdef:`WIDE(10.2)`    出力桁数の設定

:paramdef:`SUF_OPTION(10.2)`    面要素出力オプション

:paramdef:`POST_COORDINATE(10.2)`    ポスト処理で使用する座標系の設定

:paramdef:`COIL_OPTION(10.2)`    COIL(17.1)のpost_geomへの出力設定

:paramdef:`POST_FFT(10.2)`    ポスト処理にて周波数分解を行うオプション

    :paramdef:`FFT_TYPE(10.2)`    JSONフォーマットでのポスト処理にて周波数分解を行うオプション

    :paramdef:`FREQUENCY(10.2)`    周波数分解での基本波周波数 (Hz)を指定

    :paramdef:`NO_OUTPUT_FREQUENCY(10.2)`    出力する周波数次数の設定

    :paramdef:`INITIAL_PHASE(10.2)`    出力の最初の位相 (deg)

    :paramdef:`LAST_PHASE(10.2)`    出力の最後の位相 (deg)

    :paramdef:`PHASE_INTERVAL(10.2)`    出力の位相間隔 (deg)

    :paramdef:`NO_OUTPUT_FREQUENCY_ORDER(10.2)`    ファイル出力する周波数次数を指定

    :paramdef:`ORDERS(10.2)`    JSONフォーマットでのファイル出力する周波数次数を指定

---------------------
設定フォーマット
---------------------
.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

        :種類: 固定パラメータセット  
        :行数: 1  
        :パラメータ数: 10  

        :種類: 追加パラメータセット1  
        :行数: 1  
        :パラメータ数: NUMBER_OUTPUT_MATS

        :種類: 追加パラメータセット2  
        :行数: 1  
        :パラメータ数: 2

    .. code-block:: text
        :caption: 出力ファイル設定

        * POST_DATA_FILE * ELEM_OUT * NODE_OUT * NUMBER_OUTPUT_MATS * AVERAGE * WIDE * SUF_OPTION * POST_COORDINATE * COIL_OPTION * POST_FFT *
            I              I          I             I               I       I        I             I                I            I
        * MAT_ID_NOS *
            I   I
        * FREQUENCY * NO_OUTPUT_FREQUENCY *
            E         I
        * INITIAL_PHASE * LAST_PHASE * PHASE_INTERVAL *
            E            E               E
        * ORDERS *
            I   I 

=================
JSONフォーマット
=================

.. code-block:: json
    :caption: JSON format from 2024.11

    "10_2_Output_Files" : 
    {
        "POST_DATA_FILE" : 5,
        "ELEM_OUT" : 1,
        "NODE_OUT" : 0,
        "AVERAGE" : 0,
        "WIDE" : 0,
        "SUF_OPTION" : I,
        "POST_COORDINATE" : I,
        "COIL_OPTION" : I,
        "OUTPUT_MATS" : 
        {
            "OUTPUT_TYPE" : I,
            "OUTPUT_MAT_IDS" : [ I ]
        },
        "POST_FFT" :
        {
            "FFT_TYPE" : I,
            "FREQUENCY" : E,
            "INITIAL_PHASE" : E,
            "LAST_PHSE" : E,
            "PHASE_INTERVAL" : E,
            "OUTPUT_FREQUENCY_ORDER" : [ I ]
        }
    },

.. important:: 
    :ref:`Release 2024.11 <rls2024_11>`

    JSONフォーマットでは，これらのパラメータは定義しなくてもデフォルト値を使用します。
    デフォルト値は詳細説明をご覧ください。


--------------
**詳細説明**
--------------

=======================
**10_2_Output_Files**
=======================
.. paramdef:: 10_2_Output_Files

:JSONキー: 出力ファイルオブジェクト

====================
**POST_DATA_FILE**
====================
.. paramdef:: POST_DATA_FILE(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 1]

.. list-table:: 出力データファイル形式の設定
    :header-rows: 1

    * - 番号
      - 出力データファイル形式
      - 説明
    * - `0` or "none"
      - 無効
      - 出力しない。
    * - `1` or "Ideas"
      - I-DEAS Universal file (拡張子 .unv)
      - I-DEAS Universal file形式で出力する。
    * - `2` or "ATLAS"
      - ATLAS file
      - ATLAS file形式で出力する。
    * - `4` or "KSWAD"
      - KSWAD file (拡張子 .kswad)
      - KSWAD file形式で出力する。
    * - `5` or "Femap"
      - Femap Neutral file (拡張子 .neu)
      - Femap Neutral file形式で出力する。
    * - `6` or "CADAS"
      - CADAS file (post.cad)
      - CADASモジュールが必要。CADAS file形式で出力する。
    * - `8` or "HyperView"
      - HyperView Ascii file (post.hwascii)
      - HyperView Ascii file形式で出力する。
    * - `10` or "JSON"
      - JSON file (拡張子 .json)
      - JSON file形式で出力する。
    * - `11` or "GMSH"
      - GMSH file (.msh)
      - GMSH file形式で出力する。
    * - `12` or "HDF5"
      - HDF5 file (.h5) & XDMF file (post.xmf)
      - HDF5 file形式で出力する。post.xmfも同時に出力される。
    * - `13` or "GiD"
      - GiD post file (case.post.msh, case.post.res)
      - GiD post file形式で出力する。post.mshはメッシュファイル，post.resは結果ファイルとして出力される。

＊ 文字列入力は，大文字・小文字を区別しません。

.. caution:: 
    Nastran file，Abaqus input fileでの出力はできない。

.. note::
    改訂履歴
    
    :ref:`Release 10.2.5 <rls10_2_5>` 

    HyperView Ascii file出力対応

    :ref:`Release_2025_11 <rls2025_11>`

    ``POST_DATA_FILE`` に文字列でのファイルフォーマット指定を追加

    JSON, GMSH, HDF5 & XDMF, GiD post ファイルフォーマット追加

====================
**ELEM_OUT**
====================
.. paramdef:: ELEM_OUT(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 2]
        
.. list-table:: 要素量の出力設定。
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値**
     - 出力しない。
   * - 1
     - 要素量を出力する。

.. important:: 
    分布量を出力する際は ``ELEM_OUT`` ， ``NODE_OUT`` のいずれかあるいは両方に1を指定する。

.. tip:: 
    要素量の方が節点量よりも精度が高い。ただし， :paramdef:`FORCE_NODAL(10.3)` は節点力なので節点量の方が精度が良い。

====================
**NODE_OUT**
====================
.. paramdef:: NODE_OUT(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 3]

.. list-table:: 節点量の出力設定。
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値** 
     - 出力しない。
   * - 1
     - 節点量を出力する。

.. important:: 
    分布量を出力する際は ``ELEM_OUT`` ， ``NODE_OUT`` のいずれかあるいは両方に1を指定する。

.. tip:: 
    *disp* :変位量は節点量だが， ``NODE_OUT`` =0 でも ``ELEM_OUT`` =1 であれば出力する。


.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. paramdef:: NUMBER_OUTPUT_MATS(10.2)

    **NUMBER_OUTPUT_MATS**
    
    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 4]


    出力する材料の番号。 *post_geom* ファイルにも対応。

    - **デフォルト値** =0の時，全ての物性を選択。
    - ＞0の時，次の行(MAT_ID_NOS(10))にこの数だけの物性番号を入力する。
    - ＜0の時，次の行(MAT_ID_NOS(10))に指定された物性番号を除いてファイル出力する。 *elem* ファイルにも対応。

~~~~~~~~~~~~~~~~~~~~
**MAT_ID_NOS**
~~~~~~~~~~~~~~~~~~~~
.. paramdef:: MAT_ID_NOS(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. paramdef:: OUTPUT_MATS(10.2)
    
    OUTPUT_MATS
    
    .. code-block:: none
        :caption: 追加パラメータセット1

        [row, col] = [1, 1]
        
    テキスト形式の場合，複数設定する場合でも一行で設定する。

:型: 整数 (I)
:説明: ファイル出力する物性番号 :paramdef:`MAT_ID(16.1)` , :paramdef:`SMAT_ID(16.2)` を配列で指定する。

    

.. note::
    改訂履歴
    
    :ref:`Release 11.2.1 <rls11_2_1>` 

    ``NUMBER_OUTPUT_MATS`` を *post_geom* ファイルにも適用

====================
**AVERAGE**
====================
.. paramdef:: AVERAGE(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 5]


時間平均化オプション。要素発熱量( :paramdef:`HEAT(10.3)`, :paramdef:`HEAT(11)` と 鉄損出力( :paramdef:`IRON_LOSS(10.3)`, :paramdef:`IRON_LOSS(11)` )で使用される。

.. list-table:: 時間平均化オプション
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値** 
     - 時間平均しない。
   * - 1
     - 時間平均する。



~~~~~~~~~~~~~~~~~~~~
要素発熱 *HEAT*
~~~~~~~~~~~~~~~~~~~~

.. list-table:: 発熱量の時間平均化オプション
   :header-rows: 1

   * - 番号
     - 解析対象
     - 説明
   * - 0 **デフォルト値**
     - すべて
     - 時間平均しない。
   * - 1
     - 時間領域解析時
     - :paramdef:`STEP_INTERVAL(9)` ステップの平均を :paramdef:`STEP_INTERVAL(9)` 毎に出力。
   * - 2
     - 周波数領域解析時
     - 一周期平均。このとき，発熱以外は出力されない。


~~~~~~~~~~~~~~~~~~~~~
鉄損算出 *IRON_LOSS*
~~~~~~~~~~~~~~~~~~~~~

.. list-table:: 鉄損算出の時間平均化オプション
   :header-rows: 1

   * - 番号
     - 解析対象
     - 説明
   * - 0 **デフォルト値** 
     - すべて
     - 時間平均しない。
   * - 1
     - 一周期の非線形静磁場解析（ :paramdef:`STATIC(2)` =1），または非線形過渡解析（ :paramdef:`TRANSIENT(2)` =1）
     - ポスト処理による鉄損算出で使用。
   * - -1
     - 半周期の非線形静磁場解析（ :paramdef:`STATIC(2)` =1），または非線形過渡解析（ :paramdef:`TRANSIENT(2)` =1）
     - ポスト処理による鉄損算出で使用。

PlayModel（ :paramdef:`ANISOTROPY(16.1)` =5）によるヒステリシス損を算出（ :paramdef:`IRON_LOSS(11)` =3）するときは一周期（=1）とする。詳細はVI章を参照。

ポスト処理による周波数分解 **POST_FFT**

- =1： 周波数分解された次数ごとの物理量をスペクトルとして出力する。

.. tip:: 
    ポスト処理のみの設定
    
    :paramdef:`POST_PROCESSING(1)` =1, 
    :paramdef:`PRE_PROCESSING(1)` = :paramdef:`MAKE_SYSTEM_MATRICES(1)` = :paramdef:`SOLVE_EQUATION(1)` =0

.. note::
    改訂履歴
    
    :ref:`Release 11.0.1 <rls11_0_1>` 

    PlayModel（ :paramdef:`ANISOTROPY(16.1)` =5）によるヒステリシス損算出に対応

    :ref:`Release 12.0.10 <rls12_0_10>` 

    ``POST_FFT`` の周波数スペクトル出力に対応


====================
**WIDE**
====================
.. paramdef:: WIDE(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 6]

出力の精度設定。

.. list-table:: 出力桁数の設定
   :widths: 10 30 30 30
   :header-rows: 1

   * - オプション
     - ポストデータの出力有効桁
     - outputファイルの出力有効桁
     - CADAS 節点座標出力の有効桁
   * - 0 **デフォルト値**
     - 6桁
     - 6桁
     - 6桁
   * - 1
     - 9桁
     - 9桁
     - 16桁
   * - 2
     - ATLAS 節点座標出力の有効桁が 12桁
     - ATLAS 節点座標出力の有効桁が 12桁
     - ATLAS 節点座標出力の有効桁が 12桁

.. important:: 
    ATLAS以外の入力メッシュに対する ATLAS中間ファイルは本指定に依らず 12桁。

    ATLASフォーマット以外の入力メッシュは一旦ATLAS中間ファイルに変換されるが， ATLAS形式は固定長フォーマットになっており，r11.0.1までは8桁を超える節点番号や要素番号が取り扱えず，桁落ちを生じることもあり，r11.1.1において ``WIDE`` =2を指定すると12桁まで扱えるようにした。r11.2.3からは ``WIDE`` 指定によらず，ATLAS中間ファイルは12桁で出力するようにした。

.. note::
    改訂履歴
    
    :ref:`Release 10.4.1 <rls10_4_1>` 

    *output* ファイルの出力有効桁（6桁，9桁）対応

    :ref:`Release 11.1.1 <rls11_1_1>` 

    ``WIDE`` =2追加

    :ref:`Release 11.2.3 <rls11_2_3>` 

    ATLAS中間ファイルは本指定に依らず12桁

====================
**SUF_OPTION**
====================
.. paramdef:: SUF_OPTION(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 7]

.. list-table:: 面要素出力オプション
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値**
     - 面要素は出力しない。
   * - 1
     - 入力された面要素を追加する。

====================
**POST_COORDINATE**
====================
.. paramdef:: POST_COORDINATE(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 8]


出力する座標系の指定。ベクトル量が対象。

例えば円筒座標系を指定すれば，磁束密度は :math:`B_r`, :math:`B_\theta`, :math:`B_z` で出力される。

.. list-table:: 出力する座標系の設定
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値** 
     - ポストデータの座標系変換を行わない。
   * - ＞0
     - :paramdef:`10_2_Output_Files` のポストデータを出力する :paramdef:`COORDINATE(12)` 。:paramdef:`11_Print_Output` にも適用される。

.. note::
    改訂履歴
    
    :ref:`Release 10.4.1 <rls10_4_1>` 

    ``POST_COORDINATE`` によるポストデータの座標変換機能追加

====================
COIL_OPTION
====================
.. paramdef:: COIL_OPTION(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 9]

.. list-table:: COILの出力オプション
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値**
     -  :paramdef:`COIL(17.1)` を *post_geom* , *t_r_interface* に出力する。
   * - 1
     - :paramdef:`COIL(17.1)` を出力しない。

====================
POST_FFT（テキスト），FFT_TYPE（JSON）
====================
.. paramdef:: POST_FFT(10.2)
.. paramdef:: FFT_TYPE(10.2)

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 固定パラメータセット1

        [row, col] = [1, 10]

.. list-table:: FFTによる周波数分解の設定
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値** 
     - 処理しない。
   * - 1
     - ポスト処理にて周波数分解を行う。 :paramdef:`STEP_INTERVAL(9)` のステップを一周期として磁束密度( *magnetic* )等が次数別に出力される。電磁力（ :paramdef:`FORCE_NODAL(10.3)` と :paramdef:`FORCE_J_B(10.3)` ）も磁気ベクトルポテンシャルと電気スカラーポテンシャルの周波数分解により出力される。
   * - -1
     - ポスト処理にて電磁力（ :paramdef:`FORCE_NODAL(10.3)` と :paramdef:`FORCE_J_B(10.3)` ）を電磁力そのものから周波数分解を行う。電磁力出力のみに有効。

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 追加パラメータセット2

        [row, col] = [1, 10]
        Type=I

        * FREQUENCY
        * NO_OUTPUT_FREQUENCY

~~~~~~~~~~~~~~
FREQUENCY
~~~~~~~~~~~~~~
.. paramdef:: FREQUENCY(10.2)

:型: 実数 (E)
:単位: Hz
:説明: 周波数分解での基本波周波数を指定します。

~~~~~~~~~~~~~~~~~~~~~~~~
NO_OUTPUT_FREQUENCY
~~~~~~~~~~~~~~~~~~~~~~~~
.. paramdef:: NO_OUTPUT_FREQUENCY(10.2)

.. list-table:: 周波数次数の設定
   :header-rows: 1

   * - 番号
     - 説明
   * - 0 **デフォルト値** 
     - すべての周波数を出力する。
   * - ＞0
     - ``ORDERS`` にこの数だけの周波数次数を入力する。

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション

    .. code-block:: none
        :caption: 追加パラメータセット3

        [row, col] = [1, 3]
        Type=E

~~~~~~~~~~~~~~~~~~~~
INITIAL_PHASE
~~~~~~~~~~~~~~~~~~~~
.. paramdef:: INITIAL_PHASE(10.2)

:型: 実数 (E)
:単位: degree
:説明: 出力の最初の位相を指定します。

~~~~~~~~~~~~~~~~~~~~
LAST_PHASE
~~~~~~~~~~~~~~~~~~~~
.. paramdef:: LAST_PHASE(10.2)

:型: 実数 (E)
:単位: degree
:説明: 出力の最後の位相を指定します。``LAST_PHASE`` > ``INITIAL_PHASE`` であること。

~~~~~~~~~~~~~~~~~~~
PHASE_INTERVAL
~~~~~~~~~~~~~~~~~~~
.. paramdef:: PHASE_INTERVAL(10.2)

:型: 実数 (E)
:値: > 0
:単位: degree
:説明: 出力の位相間隔を指定します。

**追加パラメータセット4**

.. collapsible:: 
    :title: テキストフォーマットの折りたたみセクション
    
    .. paramdef:: NO_OUTPUT_FREQUENCY_ORDER(10.2)
    
    NO_OUTPUT_FREQUENCY_ORDER

    .. code-block:: none
        :caption: 追加パラメータセット4

        [row, col] = [1, 1]
        Type=I*NO_OUTPUT_FREQUENCY

    ファイル出力する周波数次数を指定する。周波数ではないことに注意すること。

~~~~~~~~~~~~~~~~~~~~~
ORDERS
~~~~~~~~~~~~~~~~~~~~~
.. paramdef:: ORDERS(10.2)

:型: 整数 (I)
:説明: JSONフォーマットで，ファイル出力する周波数次数を配列で指定する。

.. note:: 
    改訂履歴:
    
    :ref:`Release 12.0.6 <rls12_0_6>` 

    ``POST_FFT`` 機能追加

    :ref:`Release 12.0.10 <rls12_0_10>` 

    ``POST_FFT`` =-1機能を追加

    :ref:`Release 12.0.16 <rls12_0_16>` 

    ``POST_FFT`` 関連入力行整理

