メインコンテンツ

熱液体ドメイン

完全なドメインのソース ファイルを表示するには、MATLAB® コマンド プロンプトで次のように入力します。

open([matlabroot '/toolbox/physmod/simscape/library/m/+foundation/+thermal_liquid/thermal_liquid.ssc'])

以下に、短くした熱液体ドメインの宣言を示します。可読性を高めるため、中間ルックアップ テーブルの値を省略しています。

domain thermal_liquid
% Thermal Liquid Domain

% Copyright 2012-2025 The MathWorks, Inc.

parameters
    % Default liquid property tables for water
    % Rows of the tables correspond to the temperature vector
    % Columns of the tables correspond to the pressure vector

    T_TLU = {[273.1600:10:373.16]', 'K'  }; % Temperature vector
    p_TLU = {[0.01, 0.1, 5:5:50],   'MPa'}; % Pressure vector

    pT_validity_TLU = {[
        1     1     1     1     1     1     1     1     1     1     1     1
        1     1     1     1     1     1     1     1     1     1     1     1
        1     1     1     1     1     1     1     1     1     1     1     1
        1     1     1     1     1     1     1     1     1     1     1     1
        1     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        0     1     1     1     1     1     1     1     1     1     1     1
        ], '1'}; % Pressure-temperature validity matrix

    rho_TLU   = {[
        954.4	995.1	 ...	978.2	980.3
        ], 'kg/m^3'}; % Density table

    u_TLU = {[
        0.0002    0.0018   ...  407.1700  405.9800
        ], 'kJ/kg'}; % Specific internal energy table

    nu_TLU    = {[
        1.8768	1.7999	   ...	  0.3000  0.3007
        ], 'mm^2/s'}; % Kinematic viscosity table

    cp_TLU  = {[
        4.2199    4.2194    ...    4.1245    4.1157
        ], 'kJ/(kg*K)'}; % Specific heat at constant pressure table

    k_TLU = {[
        561.0400  561.0900  ...  703.3500  706.0000
        ], 'mW/(m*K)'}; % Thermal conductivity table

    beta_TLU  =  {[
        0.00022	0.02092	   ...	 2.34381  2.37739
        ], 'GPa'};  % Isothermal bulk modulus table

    alpha_TLU = {1e-4 * [
        1.0126	-0.4997	   ...	 6.8593	6.8003
        ], '1/K'}; % Isobaric thermal expansion coefficient table

    mu_TLU = {[
        1.79134166000000	1.79104172000000	...	0.293460000000000	0.294776210000000
        ], 'cP'}; % Dynamic viscosity table

    Pr_TLU = {[
        13.4736964762477	13.4686439490420	...	1.72087263808914	1.71842839588810
        ], '1'}; % Prandtl number table
end

parameters
    pT_region_flag         = foundation.enum.pT_region_TL.min_max; % Valid pressure-temperature region parameterization
    %                                                          0 - min_max
    %                                                          1 - validity_matrix
    T_min                  = {273.16,   'K'       }; % Minimum valid temperature
    T_max                  = {373.16,   'K'       }; % Maximum valid temperature
    p_min                  = {0.01,     'MPa'     }; % Minimum valid pressure
    p_max                  = {50,       'MPa'     }; % Maximum valid pressure
    T_atm                  = {293.15,   'K'       }; % Atmospheric temperature
    p_atm                  = {0.101325, 'MPa'     }; % Atmospheric pressure
    properties_range_check = simscape.enum.assert.action.error; % Pressure and temperature outside valid range
    %                                                             0 - none
    %                                                             1 - warn
    %                                                             2 - error
    k_cv                   = {1.43e-4,  'kg/(m*s)'}; % Ratio of thermal conductivity to specific heat
    max_aspect_ratio       = {5,        '1'       }; % Maximum component aspect ratio (length/diameter) for thermal conduction
    air_fraction           = {0.005,    '1'       }; % Volumetric fraction of entrained air in mixture at atmospheric conditions
    R_air                  = {0.287,    'kJ/kg/K' }; % Specific gas constant
    air_dissolution_model  = false;                  % Model air dissolution
    p_crit                 = {3, 'MPa'}; % Full dissolution pressure
end

variables
    p = {0.1, 'MPa'}; % Pressure
    T = {300, 'K'  }; % Temperature
end

variables (Balancing = true)
    mdot = {0, 'kg/s'}; % Mass flow rate
    Phi  = {0, 'kW'  }; % Energy flow rate
end

end

次の変数とパラメーターがあります。

  • アクロス変数 p (絶対圧力)、単位は MPa

  • スルー変数 mdot (質量流量)、単位は kg/s

  • アクロス変数 T (温度)、単位はケルビン

  • スルー変数 Phi (エネルギー流量)、単位は kW

  • 有効な圧力-温度領域のパラメーター化を定義するパラメーター pT_region_flag。次の 2 つの値をもちます。

    • 0 — 最小値および最大値による

    • 1 — 有効性行列による

  • 最小有効温度を定義するパラメーター T_min

  • 最小有効圧力を定義するパラメーター p_min

  • 最大有効温度を定義するパラメーター T_max

  • 最大有効圧力を定義するパラメーター p_max

  • 大気温度を定義するパラメーター T_atm

  • 大気圧を定義するパラメーター p_atm

  • 比熱に対する熱伝導率の比を定義するパラメーター k_cv

  • 熱伝導に使用するコンポーネントの最大縦横比 (長さ/直径) を定義するパラメーター max_aspect_ratio

また、次の液体熱力学特性に関するルックアップ テーブルも含まれています。

  • 密度

  • 比内部エネルギー

  • 動粘性率

  • 定圧比熱

  • 熱伝導率

  • 等温体積弾性率

  • 等圧熱膨張係数

  • 絶対粘度

  • プラントル数

これらのパラメーター宣言は、熱液体ドメインに接続されているコンポーネントに伝播されます。したがって、コンポーネントの方程式内の tablelookup 関数でこれらを使用できます。特に、Foundation ライブラリの熱液体ブロックでは、内挿のためにこれらのルックアップ テーブルが使用されます。

カスタム コンポーネント宣言でこのドメインを参照するには、次の構文を使用します。

foundation.thermal_liquid.thermal_liquid 

参考

トピック