tipo_de_macro=R2
id='dl' expresin='0.5' evaluar='una-sola-vez' constante='si'
id='DT' expresin='0.1' evaluar='una-sola-vez' constante='si'
id='T' expresin='1' evaluar='una-sola-vez' constante='si'
id='R' expresin='1' evaluar='una-sola-vez' constante='si'
id='S' expresin='1' evaluar='una-sola-vez' constante='si'
id='factor' expresin='0.2' evaluar='una-sola-vez' constante='si'
id='normal' expresin='1' evaluar='una-sola-vez' constante='si'
id='curvas' expresin='1' evaluar='una-sola-vez' constante='si'
id='simetria' expresin='2' evaluar='una-sola-vez' constante='si'
id='Fx' expresin='1+x^2'
id='Fy' expresin='x^2-y^2'
inicio='m=ent((480/escala)/dl); n=ent((360/escala)/dl)' hacer='x0=-(m-1)*dl/2-Ox/escala;y0=-(n-1)*dl/2+Oy/escala;M=m*n;N=ent(abs(T/dt))' id='INIT' evaluar='siempre' algoritmo='si'
id='fx(x,y)' expresin='Fx'
id='fy(x,y)' expresin='Fy'
inicio='i=0;u=x1;v=y1;n=abs(t/DT);dt=sgn(t)*DT;tt=0;' hacer='p=u;q=v;fx0=fx(p,q);fy0=fy(p,q);dt=sgn(t)*DT;DD=sqrt(fx0^2+fy0^2);dt=(DD<=1)?dt:dt/sqrt(DD);k1x=fx0*dt;k1y=fy0*dt;tt=tt+dt/2;k2x=fx(p+k1x/2,q+k1y/2)*dt;k2y=fy(p+k1x/2,q+k1y/2)*dt;k3x=fx(p+k2x/2,q+k2y/2)*dt;k3y=fy(p+k2x/2,q+k2y/2)*dt;tt=tt+dt/2;k4x=fx(p+k3x,q+k3y)*dt;k4y=fy(p+k3x,q+k3y)*dt;i=i+1;u=p+(k1x+2*k2x+2*k3x+k4x)/6;v=q+(k1y+2*k2y+2*k3y+k4y)/6;' mientras='(abs(dt)>0)&(abs(tt)<=abs(t))' id='P(x1,y1,t)' expresin='u' algoritmo='si'
inicio='i=0;u=x1;v=y1;n=abs(t/DT);dt=sgn(t)*DT;tt=0;' hacer='p=u;q=v;fx0=fx(p,q);fy0=fy(p,q);dt=sgn(t)*DT;DD=sqrt(fx0^2+fy0^2);dt=(DD<=1)?dt:dt/sqrt(DD);k1x=fx0*dt;k1y=fy0*dt;tt=tt+dt/2;k2x=fx(p+k1x/2,q+k1y/2)*dt;k2y=fy(p+k1x/2,q+k1y/2)*dt;k3x=fx(p+k2x/2,q+k2y/2)*dt;k3y=fy(p+k2x/2,q+k2y/2)*dt;tt=tt+dt/2;k4x=fx(p+k3x,q+k3y)*dt;k4y=fy(p+k3x,q+k3y)*dt;i=i+1;u=p+(k1x+2*k2x+2*k3x+k4x)/6;v=q+(k1y+2*k2y+2*k3y+k4y)/6;' mientras='(abs(dt)>0)&(abs(tt)<=abs(t))' id='Q(x1,y1,t)' expresin='v' algoritmo='si'
id='X(s)' expresin='x0+(s%m)*dl'
id='Y(s)' expresin='y0+ent(s/m)*dl'
id='Nx(x,y)' expresin='factor*fx(x,y)/sqrt(fx(x,y)^2+fy(x,y)^2)'
id='Ny(x,y)' expresin='factor*fy(x,y)/sqrt(fx(x,y)^2+fy(x,y)^2)'
tipo='flecha' fondo='si' dibujar-si='normal=0' color='8080ff' expresin='(X(s),Y(s))(X(s)+fx(X(s),Y(s)),Y(s)+fy(X(s),Y(s)))' familia='s' s.intervalo='[0,M-1]' s.pasos='M-1' tamao='1' ancho='0' ancho='0' punta='2' flecha='8080ff' 
tipo='flecha' fondo='si' dibujar-si='normal=1' color='8080ff' expresin='(X(s),Y(s))(X(s)+Nx(X(s),Y(s)),Y(s)+Ny(X(s),Y(s)))' familia='s' s.intervalo='[0,M-1]' s.pasos='M-1' tamao='1' ancho='0' ancho='0' punta='2' flecha='8080ff' 
tipo='curva' dibujar-si='curvas&(simetria=0)' color='000080' expresin='(P(-S+S*(s%4)/2,-S+S*(s/8),t),Q(-S+S*(s%4)/2,-S+S*(s/8),t))' familia='s' s.intervalo='[0,16]' s.pasos='16' t.intervalo='[0,T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=0)' color='000080' expresin='(P(-S+S*(s%4)/2,-S+S*(s/8),t),Q(-S+S*(s%4)/2,-S+S*(s/8),t))' familia='s' s.intervalo='[0,16]' s.pasos='16' t.intervalo='[0,-T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=1)' color='000080' expresin='(P(s,0,t),Q(s,0,t))' familia='s' s.intervalo='[-S,S]' s.pasos='8' t.intervalo='[0,T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=1)' color='000080' expresin='(P(s,0,t),Q(s,0,t))' familia='s' s.intervalo='[-S,S]' s.pasos='8' t.intervalo='[0,-T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=2)' color='000080' expresin='(P(0,s,t),Q(0,s,t))' familia='s' s.intervalo='[-S,S]' s.pasos='8' t.intervalo='[0,T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=2)' color='000080' expresin='(P(0,s,t),Q(0,s,t))' familia='s' s.intervalo='[-S,S]' s.pasos='8' t.intervalo='[0,-T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=3)' color='000080' expresin='(P(R*cos(s),R*sen(s),t),Q(R*cos(s),R*sen(s),t))' familia='s' s.intervalo='[0,2*pi]' s.pasos='16' t.intervalo='[0,T]' t.pasos='16' visible='no' 
tipo='curva' dibujar-si='curvas&(simetria=3)' color='000080' expresin='(P(R*cos(s),R*sen(s),t),Q(R*cos(s),R*sen(s),t))' familia='s' s.intervalo='[0,2*pi]' s.pasos='16' t.intervalo='[0,-T]' t.pasos='16' visible='no' 
