我有以下微分方程:$\frac{\mathrm{d}x}{\mathrm{d}t} = \alpha \frac{x}{x + c}$
我有函数$p(t) = \frac{x(t)}{x(t)+c}$
。我想绘制函数页. 我该如何用 Ti 做到这一点钾Z?
答案1
这是绘画的基础。你可以查看TikZ/PGF 文档查看语法\draw plot
。还在本论坛中搜索有关graph
和plot
等的信息。
这是一种方法。
\documentclass[tikz,border=5mm]{standalone}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}[declare function={c=1.2;cgap=.3;
xmin=c-4;xleft=c-cgap;
xmax=c+4;xright=c+cgap;
p(\x)=\x/(\x-c);}]
\draw[->] (xmin,0)--(xmax,0) node[below right]{$x$};
\draw[->] (0,{p(xleft)})--(0,{p(xright)}) node[below left]{$y$};
\draw[dashed] (xmin,1)--(xmax,1)
(c,{p(xleft)})--(c,{p(xright)});
\path (0,0) node[below left]{O} (c,0) node[below right]{$c$};
\draw[thick,magenta]
plot[domain=xmin:xleft] (\x,{p(\x)})
plot[domain=xright:xmax] (\x,{p(\x)}) node[above left=2mm]{$p(x)=\dfrac{x}{x-c}$};
\end{tikzpicture}
\end{document}
答案2
\pstODEsolve
全部在 LaTeX 中进行,按照要求:使用包求解 ODE 和后处理解pst-ode
,用绘制结果pgfplots
。
lualatex
用或排版两次latex + dvips + ps2pdf -dNOSAFER
。
\documentclass[margin=1pt]{standalone}
\usepackage{pst-ode}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
% define some constants / initial condition
\pstVerb{
tx@Dict begin
/alpha 1.0 def
/const 1.0 def
/xinit 1.0 def
end
}
\pstODEsolve[algebraicAll,saveData]{x_p_vs_t}{ % result saved in file x_p_vs_t.dat
t | x[0] | x[0]/(x[0]+const) % result table (post-processing ODE solution): t, x(t), p(t)
}{0}{10}{101}{ % t_0 = 0, t_max = 10, 101 output points
xinit % initial condition x(t=0)
}{
alpha*x[0]/(x[0]+const) % ODE RHS
}
\begin{document}
\IfFileExists{x_p_vs_t.dat}{}{dummy text\end{document}}
\begin{tikzpicture}
\begin{axis}[axis y line*=left, xlabel={$t$},ylabel={\color{blue}$p(t)$}]
\addplot [no markers, blue] table [x index=0, y index=2] {x_p_vs_t.dat};
\end{axis}
\begin{axis}[axis x line=none, axis y line*=right, xlabel={$t$}, ylabel={$x(t)$}, ytick distance=1, ymin=0.5, ymax=9.8]
\addplot [no markers] table [x index=0, y index=1] {x_p_vs_t.dat};
\end{axis}
\end{tikzpicture}
\end{document}