Trazar funciones asociadas sin(1/x)

Trazar funciones asociadas sin(1/x)

Necesito trazar x, -x, x^2, -x^2, sin(1/x), x*sin(1/x), x^2*sin(1/x) y sin(1/x). ). Pero las funciones que contienen sin(1/x) se ven algo mal. Cómo puedo arreglarlo. Tampoco sé cómo etiquetar las gráficas (escribiendo y=sin(1/x) al lado de la curva y=sin(1/x).

\documentclass{article}
\usepackage{pstricks-add}
\usepackage{pst-func}
\begin{document}
\begin{pspicture}*(-5,-2)(5,2)
\SpecialCoor % For label positionning
\psaxes[labels=y,Dx=\pstPI2]{->}(0,0)(-5,-2)(5,2)
\uput[-90](!PI 0){$\pi$} \uput[-90](!PI neg 0){$-\pi$} 5 \uput[-90](!PI 2 div 0){$\frac{\pi}2$}
\uput[-90](!PI 2 div neg 0){$-\frac{\pi}2$}
\psplot[linewidth=1.5pt,linecolor=blue,algebraic]{-5}{5}{sin(1/x)}
\psplot[linewidth=1.5pt,linecolor=red,algebraic]{-5}{5}{x*sin(1/x)}
\psplot[linewidth=1.5pt,linecolor=green,algebraic]{-5}{5}{x^2*sin(1/x)}
\psplot[algebraic,linestyle=dashed]{-5}{5}{x}
\psplot[algebraic,linestyle=dashed]{-5}{5}{-x}
\psplot[algebraic,linestyle=dashed]{-5}{5}{x^2}
\psplot[algebraic,linestyle=dashed]{-5}{5}{-x^2}
\end{pspicture}
\end{document}

Respuesta1

No creo que se obtenga un mejor resultado con las herramientas actuales. Lo siguiente utiliza siempre las mismas unidades para todas las funciones:

\documentclass[pstricks, margin=5pt]{standalone}
\usepackage{pstricks-add}
\begin{document}

\def\xLeft{-0.5} \def\xRight{0.5}

\psset{xunit=8,yunit=2}
\begin{pspicture}(\xLeft,-1.2)(0.55,1.3)
\psaxes[trigLabels,trigLabelBase=6,dx=2\pstRadUnit,subticks=4,ticksize=-2pt 2pt,
  labelFontSize=\scriptstyle,Dy=0.5]{->}(0,0)(\xLeft,-1.1)(\xRight,1.2)
\psset{algebraic,linewidth=0.5\pslinewidth}
\psplot[linestyle=dashed]{\xLeft}{\xRight}{x}
\psplot[linestyle=dashed]{\xLeft}{\xRight}{-x}
\psplot[linestyle=dashed]{\xLeft}{\xRight}{x^2}
\psplot[linestyle=dashed]{\xLeft}{\xRight}{-x^2}
%
\psplot[linecolor=blue,plotpoints=500]{\xLeft}{-0.07}{sin(1/x)}
\psplot[linecolor=blue,VarStep,VarStepEpsilon=1.e-8]{-0.07}{-0.001}{sin(1/x)}
\psplot[linecolor=blue,VarStep,VarStepEpsilon=1.e-8]{0.001}{0.07}{sin(1/x)}
\psplot[linecolor=blue,plotpoints=500]{0.07}{\xRight}{sin(1/x)}
%
\psplot[linecolor=red,VarStep,VarStepEpsilon=1.e-9]{\xLeft}{\xRight}{x*sin(1/x)}
%
\psplot[linecolor=green,VarStep,VarStepEpsilon=1.e-9]{\xLeft}{\xRight}{x^2*sin(1/x)}
\end{pspicture}
\end{document}

ingrese la descripción de la imagen aquí

Si quieres que sea similar a lo que tenía Spivak, entonces usa diferentes unidades para las diferentes curvas (desde el punto de vista matemático, está mal):

\documentclass[pstricks, margin=5pt]{standalone}
\usepackage{pst-plot}
\begin{document}
\def\xLeft{-0.5} \def\xRight{0.5}

\psset{xunit=8,yunit=2}
\begin{pspicture}(\xLeft,-1.2)(0.55,1.3)
\psaxes[labels=x,trigLabels,trigLabelBase=6,dx=2\pstRadUnit,subticks=4,ticksize=-2pt 2pt,
  labelFontSize=\scriptstyle,Dy=0.5]{->}(0,0)(\xLeft,-1.1)(\xRight,1.2)
\psset{algebraic,linewidth=0.5\pslinewidth}
%
\psplot[linecolor=blue!50,VarStep,VarStepEpsilon=1.e-8]{\xLeft}{-0.01}{sin(1/x)}
\psplot[linecolor=blue!50,VarStep,VarStepEpsilon=1.e-8]{0.01}{\xRight}{sin(1/x)}
%
\psplot[yunit=3,linecolor=red,VarStep,VarStepEpsilon=1.e-9]{\xLeft}{\xRight}{x*sin(1/x)}
\psplot[yunit=3,linestyle=dashed]{\xLeft}{\xRight}{x}
\psplot[yunit=3,linestyle=dashed]{\xLeft}{\xRight}{-x}
%
\psplot[yunit=8,linecolor=green,VarStep,VarStepEpsilon=1.e-9]{\xLeft}{\xRight}{x^2*sin(1/x)}
%
\psplot[yunit=8,linestyle=dashed]{\xLeft}{\xRight}{x^2}
\psplot[yunit=8,linestyle=dashed]{\xLeft}{\xRight}{-x^2}
\end{pspicture}
\end{document}

ingrese la descripción de la imagen aquí

Respuesta2

Para trazar esas funciones correctamente, puede utilizar el VarStepparámetro. La pstricks-adddocumentación incluso tiene un ejemplo para trazar sin(1/x)(Sección 24.4 Seno de la inversa de x).

Y debes dividir la trama para sin(1/x)poder omitir el 0:

\documentclass[pstricks, margin=5pt]{standalone}
\usepackage{pstricks-add}
\usepackage{pst-func}
\begin{document}
\begin{pspicture}*(-5,-2.2)(5,2)
\psaxes[labels=y,Dx=\pstPI2]{->}(0,0)(-5,-2)(5,2)
\uput[-90](!PI 0){$\pi$}\uput[-90](!PI neg 0){$-\pi$}\uput[-90](!PI 2 div 0){$\frac{\pi}2$}
\uput[-90](!PI 2 div neg 0){$-\frac{\pi}2$}
%
\psset{algebraic, VarStep, VarStepEpsilon=0.000001, linejoin=1}
%
\psplot[linestyle=dashed]{-5}{5}{x}
\psplot[linestyle=dashed]{-5}{5}{-x}
\psplot[linestyle=dashed]{-5}{5}{x^2}
\psplot[linestyle=dashed]{-5}{5}{-x^2}
%
\psplot[linecolor=blue]{-5}{-0.04}{sin(1/x)}
\psplot[linecolor=blue]{0.04}{5}{sin(1/x)}
%
\psplot[linecolor=red]{-5}{5}{x*sin(1/x)}
%
\psplot[linecolor=green]{-5}{5}{x^2*sin(1/x)}
\end{pspicture}
\end{document}

ingrese la descripción de la imagen aquí

Respuesta3

Es imposible dibujar estas curvas porque oscilan infinitamente hasta cero (de hecho, son los típicos ejemplos de funciones continuas y diferenciables que no se pueden dibujar). Lo mejor que podemos obtener es una gráfica en un rango que no contenga cero.

Las imágenes de Spivak muestran muy bien el comportamiento de las funciones, pero no son gráficas precisas. Además, es complicado representar todas estas funciones en la misma imagen, porque estas curvas requieren diferentes escalas.

Además, los puntos significativos no son múltiplos racionales de π, sino sus recíprocos, como 1/π (debido a que la función seno tiene un período 2π, las funciones (x^n)\sin (1/x) forman ondas en intervalos [1/( nπ),1/((n+2)π)]).

Esta es mi solución (nueva versión), usando mi paquete.xpicture. Dibujaremos nuestras funciones en intervalos de tipo [1/(nπ),1/((n+1)π)].

Además, cambiamos la relación de aspecto entre los ejes, porque la altura de las olas llega a cero muy rápidamente.

\documentclass{standalone}
\usepackage{xpicture,ifthen}

\begin{document}

\COMPOSITIONfunction{\SINfunction}{\RECIPROCALfunction}{\F} % F(x)=sin(1/x)
\PRODUCTfunction{\IDENTITYfunction}{\F}{\G}                 % G(x)=x sin(1/x)
\PRODUCTfunction{\IDENTITYfunction}{\G}{\H}                 % H(x)=x^2sin(1/x)

% Command \grafic plots the three functions for x in [#1,#2]    
\newcommand{\grafic}[2]{%
   \pictcolor{blue}
   \ifthenelse{\lengthtest{#1 pt > 0.064 pt}}{% the xpicture algorithm, applied to F(x)=sin x,
                                              % fails for x<1/5\pi\approx 0.064
                                              % because tangents are too vertical 
   \pictcolor{green}
             \PlotFunction[12]\F{#1}{#2}
             \PlotFunction[12]\F{-#2}{-#1}}{}
          \pictcolor{blue}
   \PlotFunction[12]\G{#1}{#2}
   \PlotFunction[12]\G{-#2}{-#1}
   \pictcolor{red}    
   \PlotFunction[12]\H{#1}{#2}
   \PlotFunction[12]\H{-#2}{-#1}}

\setlength\unitlength{2cm}
\referencesystem(0,0)(5,0)(0,1)            % Change aspect ratio to 5:1

\fbox{\begin{Picture}(-1.1,-1.1)(1.1,1.1)
   \cartesianaxes(-1,-1)(1,1)
   \linethickness{1pt}
   \pictcolor{cyan}
     \PlotFunction{\IDENTITYfunction}{-1}{1}
   \pictcolor{gray}
     \PlotFunction{\SQUAREfunction}{-1}{1}
  {\changereferencesystem(0,0)(1,0)(0,-1)    % This is a trick to draw -x and -x^2  without defining them.
   \pictcolor{cyan}
     \PlotFunction{\IDENTITYfunction}{-1}{1}
   \pictcolor{gray}
     \PlotFunction{\SQUAREfunction}{-1}{1}}
   \newcounter{iteracio}
   \setcounter{iteracio}{1}
   \COPY1\maxim
   \whiledo{\value{iteracio}<10}{%                % Loop to print functions between 1,1/\pi,1/2\pi,...
       \MULTIPLY{\value{iteracio}}\numberPI\minim
       \DIVIDE1\minim\minim
       \grafic{\minim}{\maxim}
       \COPY\minim\maxim
       \stepcounter{iteracio}}
   % Add tics in x-axis at 1/\pi, 2/\pi
   \DIVIDE{1}{\numberPI}{\inversePI} 
   \DIVIDE{1}{\numberHALFPI}{\twoinversePI} 
              \printxticlabel{\inversePI}{1/\pi}
              \printxticlabel{\twoinversePI}{2/\pi}
\end{Picture}}
\end{document}

pecado 1/x y amigos

información relacionada