tikz 中的范德华方程

tikz 中的范德华方程

我正在尝试绘制范德华方程的图形,$P=\frac{RT}{V-b}-\frac{a}{V^2}其中 R、T、a、b 为固定常数,但我肯定做错了。这是我的 MWE:

 \documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}
\begin{document}
\begin{tikzpicture}[
    declare function={
        R = 8.31;
        T=273;
        a=24.76;
        b=0.02661;
        P(R,T,x, a, b) = (R*T)/(x - b) -(a/x^2);
        P0 = P(8.314, 50, 22.4, 24.76, 0.02661);
  }
    ]

    \begin{axis}[
            ytick={0,P0},
            yticklabels={$0$,$P_0$}
            ]
        \addplot[dashed, thick,  domain=0:100]{P(8.314, 50, 22.4, 24.76, 0.02661)};
        \addplot[thick]{P(R,T,x, a, b)};
    \end{axis}
\end{tikzpicture}
\end{document}

这大概就是我想要得到的: 在此处输入图片描述

如果有人能帮助我解决我的问题,我将非常感激

答案1

因为这是一个有趣的问题,所以这里是你的图表的开头。你最有可能失败的主要原因我已经在我在下面的问题下的评论

% used PGFPlots v1.18.1
\documentclass[border=5pt]{standalone}
\usepackage{siunitx}
\usepackage{pgfplots}
    \pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}[
    declare function={
        R=0.083145;     % L bar/(mol K)
        T=573;          % K
        % H2O
        a=5.536;        % L^2/mol^2
        b=0.0305;       % L/mol
        %
        P(\x,\T,\a,\b) = (R*\T)/(\x-\b) - (\a/\x^2);
    },
]
    \begin{axis}[
        xmin=0,
        ymin=0,
        ymax=300,
        enlargelimits=false,
        xlabel=$V_{\mathrm{m}} / \unit{\liter\per\mole}$,
        ylabel=$p / \unit{\bar}$,
        domain=b:1,
        samples=201,
        smooth,
        no markers,
    ]
        \addplot {P(x,T,a,b)};
    \end{axis}
\end{tikzpicture}
\end{document}

该图显示了上述代码的结果

相关内容