No se pueden agregar puntos de función a la trama (gif)

No se pueden agregar puntos de función a la trama (gif)

Escribí este script para crear una función que se desliza hacia la derecha y siempre tiene dos puntos del gráfico designados como puntos negros:

\documentclass[tikz]{standalone}
 \usepackage{tikz,pgfplots}
 \pgfplotsset{compat=1.16}
 \pgfplotsset{ticks=none}
 \begin{document}
 \tikzset{declare function={bellshape(\x,\mu,\sigma)=exp(-(\x-\mu)^2/(2*\sigma^2));}}
 \usetikzlibrary{intersections}
 \foreach \center in {-5,-4.9,...,5}
 {
   \begin{tikzpicture}
       \begin{axis}[scale=3,
                   width=4cm,
                   xmin=-3, xmax=3, 
                   ymin=-.05, ymax=1.4,
                   axis line style={draw=none},
                   ]
           \addplot [only marks, samples at={-3,3}]
             {bellshape(x,\center,.5)};
           \addplot [domain=-5:5, samples=300,color=blue, name path=A]
             {bellshape(x,\center,.5)};
       \end{axis}
   \end{tikzpicture}
 }
 \end{document}

Que es exactamente lo que pretendía:

ingrese la descripción de la imagen aquí Pero también estoy intentando hacer uno para el paquete de ondas que aparece a continuación.

\documentclass[tikz]{standalone}
  \usepackage{tikz,pgfplots}
  \pgfplotsset{compat=1.16}
  \pgfplotsset{ticks=none}
  \begin{document}
  \tikzset{declare function={bellshape(\x,\mu,\sigma)=exp(-(\x-\mu)^2/(2*\sigma^2));}}
  \usetikzlibrary{intersections}
  \foreach \center in {-350,-320,...,350}
  {
    \begin{tikzpicture}
        \begin{axis}[scale=3,
                    width=4cm,
                    xmin=-250, xmax=250, 
                    ymin=-1, ymax=1,
                    axis line style={draw=none},
                    ]
            \addplot [only marks, samples at={-250,250}]
            {.1*(bellshape(x,\center-100,25)+bellshape(x,\center-50,25)+bellshape(x,\     center,25)+bellshape(x,\center+50,25)+bellshape(x,\center+100,25))*sin(     deg(20*pi*x))};
            \addplot [domain=-600:600,samples=400,color=blue]
            {.1*(bellshape(x,\center-100,25)+bellshape(x,\center-50,25)+bellshape(x,\     center,25)+bellshape(x,\center+50,25)+bellshape(x,\center+100,25))*sin(     deg(20*pi*x))};
        \end{axis}
    \end{tikzpicture}
  }
  \end{document}

Seguí la misma idea (coloqué la misma función de la línea azul en la función solo para los dos puntos negros), pero no obtengo ningún movimiento de los dos puntos negros. Cuando intenté eliminar la función "sin", los puntos negros se mueven a las funciones "en forma de campana", así que creo que el error debe estar en la función sin. ¿Alguien tiene alguna idea de qué podría remediar esto?

ingrese la descripción de la imagen aquí

Respuesta1

Hay algunas cosas que no entiendo en su código, la más importante la parametrización del paquete de ondas. En su caso, es una suma de gaussianos, cada uno de los cuales se mueve con la misma velocidad, multiplicada por un totalestacionariofase. ¿Por qué? En cualquier caso, es por eso que tienes el efecto que observas. La samples atgráfica se multiplica por *sin(deg(20*pi*x)), que es cero en x=-250y x=250.

Yo elegiría un paquete de ondas posiblemente más físico.

\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\pgfplotsset{ticks=none}
\begin{document}
\tikzset{declare function={bellshape(\x,\mu,\sigma)=exp(-(\x-\mu)^2/(2*\sigma^2));
wavepacket(\x,\mu,\sigma,\k)=bellshape(\x,\mu,\sigma)*sin(\k*(\x-\mu));}}
\foreach \X in {-350,-320,...,350}
  {
    \begin{tikzpicture}
        \begin{axis}[%scale=3,
                    width=4cm,
                    xmin=-250, xmax=250, 
                    ymin=-1, ymax=1,
                    axis line style={draw=none},
                    ]
  \addplot [only marks, samples at={-250,250}]
            {0.1*(wavepacket(x,\X-100,25,4)+
                wavepacket(x,\X-50,25,4)+
                wavepacket(x,\X-25,25,4)+
                wavepacket(x,\X+25,25,4)+
                wavepacket(x,\X+50,25,4)+
                wavepacket(x,\X+100,25,4))};
  \addplot [domain=-250:250,samples=251,color=blue,smooth]
            {0.1*(wavepacket(x,\X-100,25,4)+
                wavepacket(x,\X-50,25,4)+
                wavepacket(x,\X-25,25,4)+
                wavepacket(x,\X+25,25,4)+
                wavepacket(x,\X+50,25,4)+
                wavepacket(x,\X+100,25,4))};
        \end{axis}
    \end{tikzpicture}
  }
\end{document}

ingrese la descripción de la imagen aquí

información relacionada