informecuatro.pdf

19
Proyecto Nro. 4: Trazadores C´ ubicos Algoritmos Num´ ericos Jonathan Morocho Jim´ enez Escuela Polit´ ecnica Nacional Facultad de Ingenier´ ıa de Sistemas 23 de mayo de 2014 1. Trazadores C´ ubicos Utilice trazadores c´ ubicos (naturales) para reproducir la imagen de la figura: Figura 1: Imagen a ser reproducida Las curvas producidas por los polinomios interpolantes de grado n que pasan por los puntos de datos especificados pueden llegar a ser una buena aproximaci´ on para interpolar otros datos; sin em- bargo el comportamiento de la curva entre los puntos de datos puede producir fuertes oscilaciones cuando se utilizan polinomios de alto grado. Por ejemplo, supongamos que los puntos de los datos son aproximaciones de una recta. Al forzar un polinomio de alto grado a pasar por varios puntos, la curva que produce se puede desviar significativamente de la recta. Para evitar estas condiciones indeseables es posible utilizar aproximaciones locales a fin de obtener un buen ajuste de la curva. Para estos tipos de procesos de ajuste se denomina trazadores c´ ubicos. En este proyecto se comprobar´ a la utilidad de los trazadores c´ ubicos al reproducir, en la medida de lo posible, la imagen de un pez. 1

Transcript of informecuatro.pdf

  • Proyecto Nro. 4: Trazadores Cubicos

    Algoritmos Numericos

    Jonathan Morocho Jimenez

    Escuela Politecnica Nacional

    Facultad de Ingeniera de Sistemas

    23 de mayo de 2014

    1. Trazadores Cubicos

    Utilice trazadores cubicos (naturales) para reproducir la imagen de la figura:

    Figura 1: Imagen a ser reproducida

    Las curvas producidas por los polinomios interpolantes de grado n que pasan por los puntos dedatos especificados pueden llegar a ser una buena aproximacion para interpolar otros datos; sin em-bargo el comportamiento de la curva entre los puntos de datos puede producir fuertes oscilacionescuando se utilizan polinomios de alto grado. Por ejemplo, supongamos que los puntos de los datos sonaproximaciones de una recta. Al forzar un polinomio de alto grado a pasar por varios puntos, la curvaque produce se puede desviar significativamente de la recta. Para evitar estas condiciones indeseableses posible utilizar aproximaciones locales a fin de obtener un buen ajuste de la curva. Para estos tiposde procesos de ajuste se denomina trazadores cubicos. En este proyecto se comprobara la utilidad delos trazadores cubicos al reproducir, en la medida de lo posible, la imagen de un pez.

    1

  • 1.1 Proceso de reproduccion de la Figura 1 1 TRAZADORES CUBICOS

    Definicion 1. Dada una funcion f definida en [a, b] y un conjunto de nodos a = x0 < x1 < ... < xn =b, un trazador cubico S para f es una funcion que cumple con las siguientes condiciones:

    I. S(xj) = f(xj) = yj para j = 0, 1, 2, ..., n ( indica que el trazador se ajusta a cada uno de lospuntos)

    II. Sj(xj+1) = Sj+1(xj+1) para j = 0, 1, 2, ..., n 2 (indica que el trazador es continuo)

    III. S(xj+1) = Sj+1(xj+1) para j = 0, 1, 2, ..., n 2 (indica que la pendiente es continua)

    IV. Sj(xj + 1) = Sj+1(xj+1) para j = 0, 1, 2, ..., n 2 (indica que la curvatura es continua)

    Ademas, si se satisface uno de los siguientes conjuntos de condiciones de frontera:

    a. S(x0) = S(xn) = 0 ( el trazador se llama libre o natural )

    b. S(x0) = f (x0) y S(xn) = f (xn) ( el trazador se llama sujeto)

    1.1. Proceso de reproduccion de la Figura 1

    Para reproducir la imagen se debe tener en cuenta lo siguiente:

    a. Se debe trazar una cuadricula sobre la imagen a reproducir

    b. Se debe tomar el mayor numero de puntos x, f(x) para que la aproximacion sea mejor

    c. Se debe dividir a la imagen en partes que permitan obtener un solo valor de f(x) para cada xtomado

    d. Se puede omitir el resto de detalles menores (por ejemplo las curvas en las aletas y cola)

    e. Se puede anadir los ojos y el color en un editor de imagenes

    En el anexo A.1 se puede observar la imagen con cuadricula sobre la cual se obtuvo los puntosx, f(x), los cuales constan como un vector en el codigo de Matlab, cada imagen puede ser la union deal menos 2 lineas, por ejemplo, en la aleta superior e inferior; se hace de esta forma para poder apreciarcada parte del pez que se puede reproducir con varios trazadores cubicos, algunos detalles se omiten,por ejemplo la union entre el contorno superior e inferior del pez para formar la cola o los detalles delas aletas. Para la Figura 1, se ha procedido a dividir la misma en las siguientes partes:

    2

  • 1 TRAZADORES CUBICOS 1.1 Proceso de reproduccion de la Figura 1

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Contorno superior

    Figura 2: Contorno Superior

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Contorno inferior

    Figura 3: Contorno inferior

    3

  • 1.1 Proceso de reproduccion de la Figura 1 1 TRAZADORES CUBICOS

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Aleta superior

    Curva 1Curva 2

    Figura 4: Aleta superior

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Aleta inferior

    Curva 1Curva 2

    Figura 5: Aleta inferior

    4

  • 1 TRAZADORES CUBICOS 1.1 Proceso de reproduccion de la Figura 1

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Sonrisa

    Curva 1Curva 2

    Figura 6: Sonrisa

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Contorno cara

    Curva 1Curva 2

    Figura 7: Contorno cara

    5

  • 1.1 Proceso de reproduccion de la Figura 1 1 TRAZADORES CUBICOS

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Contorno cola

    Curva 1Curva 2

    Figura 8: Contorno cola

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Aleta media

    Curva 1Curva 2Curva 3Curva 4

    Figura 9: Aleta media

    6

  • 1 TRAZADORES CUBICOS 1.1 Proceso de reproduccion de la Figura 1

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    Ceja y Ojo

    Curva 1Curva 2Curva 3

    Figura 10: Ceja y Ojo

    Luego de unir todas las curvas, se obtiene la siguiente figura:

    0 5 10 15 20 250

    2

    4

    6

    8

    10

    12

    14

    16

    18

    x

    y

    PEZ

    Figura 11: Reproduccion de la figura 1

    7

  • 2 DISCUSION Y CONCLUSIONES

    Finalmente, luego de modificar la imagen en un editor de imagenes para anadir detalles, se obtienela siguiente figura:

    Figura 12: Reproduccion de la figura 1 con detalles

    2. Discusion y Conclusiones

    Desde la Figura 2 hasta la Figura 10 se observa cada elemento que compone la imagen de la Figura1. Se ha graficado las curvas respectivas que determinan cada parte representativa de la Figura 1,como son las aletas, el ojo, la sonrisa, entre otras. Hay que recalcar que para cada curva, se ha usadotrazadores cubicos para dar forma a esa curva, por ejemplo, para el ojo (Figura 9), se lo ha formadocon 2 curvas, cada una de ellas se ha dibujado mediante varios trazadores cubicos de acuerdo a lospuntos tomados basandose en la imagen del Anexo A.4 y que constan en el codigo del Anexo A.2 .

    En la Figura 11 se puede observar la union de las diferentes curvas traficadas mediante trazadorescubicos para dar una forma similar a la de la Figura 1.

    En la Figura 12 se observa la imagen retocada de la Figura 11 a la que se le agrego ciertos detallescomo el relleno del ojo y los detalles curvos del cuerpo cerca de la aleta del medio.

    Se debe tener en cuenta el numero de puntos que se escogen para trazar una curva, ya que porejemplo, entre la Figura 2 y la Figura 6 se observa que las 2 curvas no se acoplan entre si, mostrandoun espacio entre ellas que puede apreciarse claramente en la Figura 11.

    El ajuste de una curva polinomial a trozos a un conjunto de puntos dados tiene aplicaciones enlos campos del diseno asistido por computador, de la fabricacion asistida por computador y de lossistemas de generacion de graficas por computador. Lo que generalmente se desea es dibujar una curva

    8

  • REFERENCIAS REFERENCIAS

    que pase por una serie de puntos, cuyas coordenadas se conocen con precision, y que sea suave.

    Referencias

    [1] Richard L. Burden - J. Douglas Faires, Analisis Numerico, 7ma edicion, 2009

    [2] http://www.matworks.com

    [3] http://portales.puj.edu.co

    9

  • REFERENCIAS REFERENCIAS

    10

  • A. Anexos

    A.1. Trazadores Cubicos

    f unc t i on arregloSj=trazadorcubico ( x , fx )

    %x x0 , x1 , . . . , xn%fx f ( x0 ) , . . . , f ( xn )n=length ( x ) ;S=[ ] ;%1) a j=f ( x j )a=fx ;

    %2) h( j )=x( j +1)x ( j )h=[ ] ;

    f o r i=1:n1h ( i )=x ( i+1)x ( i ) ;

    end

    %3) c ( j ) , r e s o l v e r Ax=BA=zero s ( n , n ) ;

    f o r i=1:ni f ( i==1)

    A (1 , 1 ) =1;e l s e i f ( i==n )

    A ( n , n )=1;e l s e

    A ( i , i1)=h ( i1) ;A ( i , i )=2*(h ( i1)+h ( i ) ) ;A ( i , i+1)=h ( i ) ;

    endend

    B=zero s ( n , 1 ) ;

    f o r i=1:ni f ( i==1)

    B (1 , 1 ) =0;e l s e i f ( i==n )

    B ( n , 1 ) =0;e l s e

    B ( i , 1 ) =((3/ h ( i ) ) *( a ( i+1)a ( i ) ) )((3/h ( i1) ) *( a ( i )a ( i1) ) ) ;end

    end

    invA=inv ( A ) ;C=invA *B ;

    %4) bjb=[ ] ;f o r i=1:n1

    b ( i ) =((1/ h ( i ) ) *( a ( i+1)a ( i ) ) )((h ( i ) /3) *(2* C ( i , 1 )+C ( i+1 ,1) ) ) ;end

    %5) djd=[ ] ;f o r i=1:n1

    d ( i ) =(1/(3* h ( i ) ) ) *( C ( i+1 ,1)C ( i , 1 ) ) ;end

    %cons t rucc i on de po l inomiosf o r i=1:n1

    valorx=num2str ( x ( i ) ) ;S{i}=[ num2str ( a ( i ) ) '+ ' ' ( ' num2str ( b ( i ) ) ' ) ' ' *(x ' valorx ' )+ ' . . .' ( ' num2str ( C ( i , 1 ) ) ' ) ' ' *(x ' valorx ' )2+ ' ' ( ' num2str ( d ( i ) ) ' ) ' . . .' *(x ' valorx ' ) 3 ' ] ;

    end

    arregloSj=S ;

  • A.2 Graficar partes del pez A ANEXOS

    A.2. Graficar partes del pez

    %contorno supe r i o r pez

    x=2:23;fx =[ 8 . 5 , 1 0 . 6 , 1 1 . 8 , 1 2 . 5 , 1 3 . 1 , 1 3 . 7 , 1 4 . 1 , 1 4 . 4 , 1 4 . 6 , 1 4 . 6 , 1 4 . 6 , 1 4 . 4 , 1 4 . 2 , . . .

    1 3 . 9 , 1 3 . 6 , 1 3 , 1 2 . 5 , 1 1 . 8 , 1 1 . 4 , 1 1 . 9 , 1 3 , 1 2 . 8 ] ;

    arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (11) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Contorno supe r i o r ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a11 . eps ' )

    %contorno i n f e r i o r pezx=2:23;fx = [ 8 . 5 , 7 . 1 , 6 , 5 , 4 . 4 , 4 . 1 , 3 . 8 , 3 . 5 , 3 . 3 , 3 . 2 , 3 . 3 , 3 . 4 , 3 . 5 , 3 . 8 , 4 . 2 , 4 . 7 , 5 . 2 , 6 , . . .

    6 . 4 , 5 . 8 , 5 , 4 . 4 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (12) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    endx l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Contorno i n f e r i o r ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a12 . eps ' )

    %a l e t a supe r i o rx=9:16;fx =[1 4 . 4 , 1 5 . 3 , 1 5 . 8 , 1 6 . 3 , 1 6 . 6 , 1 6 . 9 , 1 7 , 1 6 . 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (13) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end%union a l e t a supe r i o rc2=plo t ( [ 1 6 1 6 ] , [ 1 6 . 9 1 3 . 6 ] , ' r ' )

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Aleta supe r i o r ' )

    12

  • A ANEXOS A.2 Graficar partes del pez

    l egend ( [ c1 , c2 ] , 'Curva 1 ' , 'Curva 2 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a13 . eps ' )

    %a l e t a i n f e r i o rx=8:14;fx = [ 3 . 8 , 2 . 6 , 2 , 1 . 6 , 1 . 2 , 1 . 1 , 1 . 1 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (14) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end%union a l e t a i n f e r i o rc2=plo t ( [ 1 4 1 4 ] , [ 1 . 1 3 . 5 ] , ' r ' )

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Aleta i n f e r i o r ' )legend ( [ c1 , c2 ] , 'Curva 1 ' , 'Curva 2 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a14 . eps ' )

    %son r i s a 1x=2 : 0 . 5 : 5 . 5 ;x (9 ) =5.8;fx = [ 8 . 5 , 7 . 7 , 7 . 6 , 7 . 4 , 7 . 4 , 7 . 5 , 7 . 8 , 8 . 3 , 8 . 6 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (15) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end

    %son r i s a 2x=5 : 0 . 2 : 6 . 2 ;fx = [ 9 , 8 . 8 , 8 . 7 , 8 . 6 , 8 . 6 , 8 . 6 , 8 . 7 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c2=plo t ( z , y , 'b ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( ' Sonr i sa ' )legend ( [ c1 , c2 ] , 'Curva 1 ' , 'Curva 2 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a15 . eps ' )

    %cara 1x=7 : 0 . 4 : 9 . 8 ;fx =[13 . 7 , 1 3 . 4 , 1 3 . 2 , 1 2 . 9 , 1 2 . 6 , 1 2 , 1 1 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (16) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    13

  • A.2 Graficar partes del pez A ANEXOS

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end

    %cara 2x=7 : 0 . 4 : 9 . 8 ;fx = [ 4 . 1 , 4 . 3 , 4 . 6 , 5 , 5 . 6 , 6 . 2 , 7 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c2=plo t ( z , y , 'b ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Contorno cara ' )legend ( [ c1 , c2 ] , 'Curva 1 ' , 'Curva 2 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a16 . eps ' )

    %co la 1x=19 : 0 . 2 : 1 9 . 8 ;fx =[11 . 8 , 1 1 , 1 0 . 5 , 1 0 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (17) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end

    %co la 2x=19 : 0 . 2 : 1 9 . 8 ;fx =[ 6 , 6 . 2 , 6 . 7 , 7 . 4 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c2=plo t ( z , y , 'b ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Contorno co l a ' )legend ( [ c1 , c2 ] , 'Curva 1 ' , 'Curva 2 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a17 . eps ' )

    % union co l a%p lo t ( [ 2 3 2 3 ] , [ 1 2 . 8 4 . 4 ] , ' k ' )

    %a l e t a media 1x=11 . 2 : 0 . 4 : 1 4 . 4 ;fx = [ 9 . 5 , 9 . 6 , 9 . 6 , 9 . 7 , 9 . 9 , 1 0 . 1 , 1 0 . 3 , 1 0 . 5 , 1 0 . 6 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (18) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;

    14

  • A ANEXOS A.2 Graficar partes del pez

    y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end

    %a l e t a media 2x=11 . 2 : 0 . 4 : 1 4 . 8 ;fx = [ 8 . 5 , 8 . 4 , 8 . 3 , 8 . 2 , 7 . 9 , 7 . 7 , 7 . 5 , 7 . 2 , 6 . 8 , 6 . 6 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c2=plo t ( z , y , 'b ' )

    end

    %l i n e a a l e t a 1c3=plo t ( [ 1 1 . 2 1 1 . 2 ] , [ 8 . 5 9 . 5 ] , 'm ' )

    %l i n e a a l e t a 2c4=plo t ( [ 1 4 . 4 1 4 . 8 ] , [ 1 0 . 6 6 . 6 ] , ' r ' )

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Aleta media ' )legend ( [ c1 , c2 , c3 , c4 ] , 'Curva 1 ' , 'Curva 2 ' , 'Curva 3 ' , 'Curva 4 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a18 . eps ' )

    %ce j ax=7 : 0 . 2 : 8 . 4 ;fx =[1 2 . 1 , 1 2 . 1 , 1 2 . 1 , 1 2 , 1 1 . 9 , 1 1 . 8 , 1 1 . 7 , 1 1 . 4 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (19) ;g r id onhold onxlim ( [ 0 2 5 ] )ylim ( [ 0 1 8 ] )

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c1=plo t ( z , y , 'k ' )

    end

    %ojo a r r i bax =6 . 5 : 0 . 3 : 7 . 7 ;fx =[10 , 1 1 , 1 1 . 2 , 1 1 , 1 0 . 2 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c2=plo t ( z , y , 'b ' )

    end

    %ojo abajox =6 . 5 : 0 . 3 : 7 . 7 ;fx =[ 1 0 , 9 . 3 , 9 . 2 , 9 . 3 , 1 0 . 2 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;c3=plo t ( z , y , ' r ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'Ceja y Ojo ' )legend ( [ c1 , c2 , c3 ] , 'Curva 1 ' , 'Curva 2 ' , 'Curva 3 ' )p r i n t ( imagen , 'depsc ' , ' f i gu r a19 . eps ' )

    15

  • A.3 Graficar pez A ANEXOS

    A.3. Graficar pez

    %contorno supe r i o r pez

    x=2:23;fx =[ 8 . 5 , 1 0 . 6 , 1 1 . 8 , 1 2 . 5 , 1 3 . 1 , 1 3 . 7 , 1 4 . 1 , 1 4 . 4 , 1 4 . 6 , 1 4 . 6 , 1 4 . 6 , 1 4 . 4 , 1 4 . 2 , . . .

    1 3 . 9 , 1 3 . 6 , 1 3 , 1 2 . 5 , 1 1 . 8 , 1 1 . 4 , 1 1 . 9 , 1 3 , 1 2 . 8 ] ;

    arregloSj=trazadorcubico ( x , fx ) ;

    imagen = f i g u r e (11) ;g r id onhold on

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %contorno i n f e r i o r pezx=2:23;fx = [ 8 . 5 , 7 . 1 , 6 , 5 , 4 . 4 , 4 . 1 , 3 . 8 , 3 . 5 , 3 . 3 , 3 . 2 , 3 . 3 , 3 . 4 , 3 . 5 , 3 . 8 , 4 . 2 , 4 . 7 , 5 . 2 , 6 , . . .

    6 . 4 , 5 . 8 , 5 , 4 . 4 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %a l e t a supe r i o rx=9:16;fx =[1 4 . 4 , 1 5 . 3 , 1 5 . 8 , 1 6 . 3 , 1 6 . 6 , 1 6 . 9 , 1 7 , 1 6 . 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end%union a l e t a supe r i o rp l o t ( [ 1 6 1 6 ] , [ 1 6 . 9 1 3 . 6 ] , 'k ' )

    %a l e t a i n f e r i o rx=8:14;fx = [ 3 . 8 , 2 . 6 , 2 , 1 . 6 , 1 . 2 , 1 . 1 , 1 . 1 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end%union a l e t a i n f e r i o rp l o t ( [ 1 4 1 4 ] , [ 1 . 1 3 . 5 ] , 'k ' )

    %ce j ax=7 : 0 . 2 : 8 . 4 ;fx =[1 2 . 1 , 1 2 . 1 , 1 2 . 1 , 1 2 , 1 1 . 9 , 1 1 . 8 , 1 1 . 7 , 1 1 . 4 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %son r i s a 1

    16

  • A ANEXOS A.3 Graficar pez

    x=2 : 0 . 5 : 5 . 5 ;x (9 ) =5.8;fx = [ 8 . 5 , 7 . 7 , 7 . 6 , 7 . 4 , 7 . 4 , 7 . 5 , 7 . 8 , 8 . 3 , 8 . 6 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %son r i s a 2x=5 : 0 . 2 : 6 . 2 ;fx = [ 9 , 8 . 8 , 8 . 7 , 8 . 6 , 8 . 6 , 8 . 6 , 8 . 7 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %cara 1x=7 : 0 . 4 : 9 . 8 ;fx =[13 . 7 , 1 3 . 4 , 1 3 . 2 , 1 2 . 9 , 1 2 . 6 , 1 2 , 1 1 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %cara 2x=7 : 0 . 4 : 9 . 8 ;fx = [ 4 . 1 , 4 . 3 , 4 . 6 , 5 , 5 . 6 , 6 . 2 , 7 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %co la 1x=19 : 0 . 2 : 1 9 . 8 ;fx =[11 . 8 , 1 1 , 1 0 . 5 , 1 0 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %co la 2x=19 : 0 . 2 : 1 9 . 8 ;fx =[ 6 , 6 . 2 , 6 . 7 , 7 . 4 , 9 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    % union co l ap lo t ( [ 2 3 2 3 ] , [ 1 2 . 8 4 . 4 ] , 'k ' )

    %a l e t a media 1x=11 . 2 : 0 . 4 : 1 4 . 4 ;fx = [ 9 . 5 , 9 . 6 , 9 . 6 , 9 . 7 , 9 . 9 , 1 0 . 1 , 1 0 . 3 , 1 0 . 5 , 1 0 . 6 ] ;

    17

  • A.3 Graficar pez A ANEXOS

    arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %a l e t a media 2x=11 . 2 : 0 . 4 : 1 4 . 8 ;fx = [ 8 . 5 , 8 . 4 , 8 . 3 , 8 . 2 , 7 . 9 , 7 . 7 , 7 . 5 , 7 . 2 , 6 . 8 , 6 . 6 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %l i n e a a l e t a 1p lo t ( [ 1 1 . 2 1 1 . 2 ] , [ 8 . 5 9 . 5 ] , 'k ' )

    %l i n e a a l e t a 2p lo t ( [ 1 4 . 4 1 4 . 8 ] , [ 1 0 . 6 6 . 6 ] , 'k ' )

    %ojo a r r i bax =6 . 5 : 0 . 3 : 7 . 7 ;fx =[10 , 1 1 , 1 1 . 2 , 1 1 , 1 0 . 2 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    %ojo abajox =6 . 5 : 0 . 3 : 7 . 7 ;fx =[ 1 0 , 9 . 3 , 9 . 2 , 9 . 3 , 1 0 . 2 ] ;arregloSj=trazadorcubico ( x , fx ) ;

    s=length ( arregloSj ) ;f o r i=1:s

    z=x ( i ) : 0 . 0 1 : x ( i+1) ;y = subs ( arregloSj {i } , z ) ;p l o t ( z , y , 'k ' )

    end

    x l ab e l ( 'x ' )y l ab e l ( 'y ' )t i t l e ( 'PEZ ' ) ;p r i n t ( imagen , 'depsc ' , ' f i gu r a20 . eps ' )

    18

  • A ANEXOS A.4 Imagen a reproducir con cuadricula

    A.4. Imagen a reproducir con cuadricula

    19

    Trazadores CbicosProceso de reproduccin de la Figura 1

    Discusin y ConclusionesAnexosTrazadores CbicosGraficar partes del pezGraficar pezImagen a reproducir con cuadricula