Pgfplots y MATLAB proporcionan resultados diferentes

Pgfplots y MATLAB proporcionan resultados diferentes

Necesito trazar una función usando pgfplots, pero el resultado es diferente al esperado. El dominio debería ser 0:1.

\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\begin{document}

\begin{tikzpicture}
    \begin{axis}[enlargelimits=false]
        \addplot[domain=0:55, samples=1001]{((sqrt((1 -cos(2*pi*x))^2+sin(2*pi*x)^2))^4)^2};
    \end{axis}
\end{tikzpicture}

\end{document}

Observe que el dominio tuvo que establecerse en 55 para poder mostrar la función completa. Mientras que el código MATLAB es el siguiente:

x=0:0.01:1;
plot(x,((sqrt((1-cos(2*pi*x)).^2+sin(2*pi*x).^2)).^4).^2)

he leídoesta respuestapero no ayudó en este caso.

Respuesta1

Matlab's siny cosasumen radianes como entrada, mientras que pgf's siny cosasumen grados. Puede pgfplotsagregar trig format=radopciones \addplotpara obtener el mismo comportamiento que Matlab y luego domain=0:1funciona.

ingrese la descripción de la imagen aquí

\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\begin{document}

\begin{tikzpicture}
    \begin{axis}[enlargelimits=false]
        \addplot[domain=0:1, samples=1001, trig format=rad]{((sqrt((1 -cos(2*pi*x))^2+sin(2*pi*x)^2))^4)^2};
    \end{axis}
\end{tikzpicture}
\end{document}

información relacionada