Ejercicio 10

Ejercicio 10

de Sofía Campot Caregnani -
Número de respuestas: 6

Hola! Una consulta, cual sería la idea para resolver este ejercicio. Hicimos esto pero queda un producto de vectores que no funciona correctamente. Gracias!

En respuesta a Sofía Campot Caregnani

Re: Ejercicio 10

de Eduardo Fernandez -

Hola,

La función de Hermite es 

H0(x) = 1 

H1(x) = 2x 

Hn(x) = 2xHn-1(x) - 2(n-1)Hn-2(x) , para n>1


Cuando hace 2xHn-1(x) lo que hace es multiplicar todos los monomios de Hn-1 por 2x, y esto significa que es como multiplicar todo los términos del polinomio por 2 y luego al multiplicar por x significa que es como agregarle un 0 a la derecha del polinomio (el término independiente pasa a ser un término en x, el término en x pasa a ser un término en x^2 y así sucesivamente).

Lo que ustedes hacen en hermite(1)*polH1 es otra cosa. Hacen el producto de dos vectores de distinto tamaño 

[2 0]*[ vector que representa Hn-1]. Esto no funciona nunca. 

Revísenlo.

Eduardo


En respuesta a Eduardo Fernandez

Re: Ejercicio 10

de Sofía Campot Caregnani -
Bien, muchas gracias! Logre solucionar eso! Pero ahora la parte de restar

2*(n-1)… Me hace una resta en todas las entradas, y yo quiero que me reste

solo en la última. Por ejemplo para el Hermite de 2 tengo  [4 0 0]-[2],

quiero que me de [4 0 -2] y me da [2 -2 -2]. Como se puede arreglar eso?



El El lun, 27 nov. 2023 a la(s) 16:28, Eduardo Fernandez (vía FING) <
En respuesta a Sofía Campot Caregnani

Re: Ejercicio 10

de Eduardo Fernandez -
Tenés que ver que la resta sea entre polinomios del mismo grado. Porque en realidad no son polinomios, son vectores que representan polinomios. Y en vectores pasa eso. Para estar vectores tienen que ser del mismo largo.

Entonces, si los polinomios (vectores) no son del mismo grado (largo), tenés que agregarle ceros al polinomio (vector) de menor grado (largo) para que coincidan. Fijate donde conviene hacerlo.

saludos,
Eduardo
En respuesta a Sofía Campot Caregnani

Re: Ejercicio 10

de Antonio Maquiel Martinez -
Buenas, yo lo que hice después de obtener los dos polinimos a restar fue obtener su largo y hacer un if para que si uno tiene menor largo que el otro, entonces se le agrege ceros a la izquierda, de forma que queden del mismo largo, es decir, tantos se le agregue tantos ceros a la izquierda como la diferencia de sus largos, no sé si habrá una forma más eficiente de hacerlo.
En respuesta a Antonio Maquiel Martinez

Re: Ejercicio 10

de Eduardo Fernandez -

Hola,

El polinomio de la izquierda siempre es 2 grados mayor que el de la derecha. 

Hn(x) = 2xHn-1(x) - 2(n-1)Hn-2(x) , para n>1

En la resta el polinomio de la izq tiene grado n y el de la derecha tiene grado n-2.

Entonces al polinomio de la derecha hay que agregarle dos ceros a su izquierda. Así ambos polinomios (vectores) tendrán el mismo largo y la misma cantidad de términos. 

Eduardo


En respuesta a Eduardo Fernandez

Re: Ejercicio 10

de Eduardo Fernandez -

En el caso  [4 0 0]-[2] se debe transformar en  [4 0 0]-[0 0 2], así la resta queda [4 0 -2] que es lo que se busca, dado que representa a 4*x^2 + 0*x -2, que es el polinomio de Hermite de grado 2.