绘制接近零的图形

绘制接近零的图形

我想用 Ti 绘制以下函数Z。

在此处输入图片描述

\begin{tikzpicture}[scale=0.7,
    declare function={ 
        func(\z) =  1/(2*(abs(\z)^3)) * (
           (1+abs(\z)) - 2*ln(1+abs(\z)) - 1/(1+abs(\z))
        );
    }
]

问题发生在零附近,函数没有以正确的方式绘制。

答案1

产生一些相当接近“真实”结果的图的一种方法是插入函数的泰勒展开式,其中较小x。否则 TiZ 会先评估该1/x^3片段然后抱怨。另一方面,泰勒展开式表明没有奇点。真正的计算机代数系统会自行进行极限计算,但 TeX 不是这样的计算机代数系统。

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}

\begin{tikzpicture}[scale=0.7,
    declare function={ 
        func(\z)=ifthenelse(abs(\z)>0.251, 1/(2*(abs(\z)^3)) * (
           (1+abs(\z)) - 2*ln(1+abs(\z)) - 1/(1+abs(\z))),
           1/6 - abs(\z)/4 + (3*abs(\z)^2)/10 - abs(\z)^3/3 + (5*abs(\z)^4)/14);
    }
]
 \begin{axis}

 \addplot[domain=-1:1,samples=31,smooth]  {func(x)};
 \end{axis} 
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容