Introducció al Matlab

Exercici 1: mod

Busqueu informació sobre la funció mod (amb help) i feu-la servir per:

  • Comprovar si el número 324 és múltiple de 7.
  • Buscar quins múltiples de 7 hi ha entre 320 i 330 (Indicació: la funció mod es pot aplicar a un vector).

Exercici 2: macedònia

Per fer una macedònia necessito 0.5 kg de peres, 1 kg de pomes i 0.75 kg de taronges. Les peres van a 3 €/kg, les pomes a 2 €/kg i les taronges a 3.5 €/kg. Construiu els un vector amb els pesos i un amb els preus i fent servir operacions vectorials calculeu amb Matlab:

  • El pes de tota la fruita que compraré.
  • El que em gastaré en cada fruita.
  • El que em gastaré en total.

Indicació: cada un dels apartats es pot resodre amb una única operació i la transposició. Recordeu (o busqueu a l’ajuda) la funció sum i els operadors de multiplicar (amb punt i sense punt) i de transposar.

Exercici 3: angle vectors

Calculeu l’angle que formen els vectors (3, 8, 4) i (-3, 2, 1).

Indicació: Recordeu la propietat del producte escalar: \(v_1 \cdot v_2 = |v_1| \cdot |v_2| \cdot cos(\alpha)\) i feu servir les funcions norm i acos.

Exercici 4: potències i formats

Calculeu la vintena potència dels números entre l’1 i el 20 i presenteu-les amb al format que calgui per que es vegi que cap d’elles és zero.

Indicació: proveu què passa amb la instrucció format amb els atributs short, long, shorte i longe.

Exercici 5: funcions

Escriviu funcions que calculin:

  • El sinus de l’angle doble
  • El sinus de la suma de dos angles

Si és possible, feu-ho amb una funció definida amb @ i també amb una funció definida mitjançant un script.

Exercici 6: input

Feu un script que demani a l’usuari entrar dos números, que representen els catets d’un triangle rectangle, i respongui l’àrea, el perímetre i els angles d’aquest triangle. Feu servir input per l’entrada de dades i disp per identificar els resultats.

Exercici 7: funció

Feu una funció que donats els catets d’un triangle rectangle en torni el perímetre.

Exercici 8: gràfica

Feu un script que demani un número n a l’usuari, i representi la gràfica de la funció sinus entre 0 i \(n\cdot\pi\).

Exercici 9: sèries

Calculeu:

  • \(\sum_{i=0}^{100000} i^2\)
  • \(\sum_{i=1}^{100000} \frac{1}{i}\)

Exercici 10: if i while

Feu un programa que triï un nombre a l’atzar entre el 0 i el 100, i vagi preguntant números a l’usuari fins que l’encerti. L’ordinador ha de dir si el busquem més gran o més petit.

Indicació: random(“unid”, 100)

Exercici 11: \(sin(i)\)

Considereu la successió \(a_i=sin(i)\) per \(i \ge 1\) i \(i \in \mathbb{N}\). Escriviu programes que calculin:

  • \(\sum_{i=1}^{100}a_i\)
  • El primer terme tal que \(|a_i|<0.01\)
  • El primer terme \(a_i\) tal que \(|a_i-a_{i-1}|<0.01\)

Exercici 12: Divisors

Escriviu programes que calculin:

  • Tots els divisors de 1249878
  • El primer divisor parell de 1249878 més gran de 10000.
  • La suma de tots els divisors de 1249878, inclosos 1 i ell mateix.
  • El producte de tots els divisors de 1249878 més petits que 100.
  • La suma dels dotze primers divisors de 1249878, inclòs l’1. Si no té dotze divisors, la suma de tots els divisors (inclos ell mateix).

Exercici 13: Triangles rectangles

Trobeu les longituds de la hipotenusa \(a\) i els catets \(b\) i \(c\) (amb \(b \ge c\)) dels triangles rectangles que compleixen cada una de les condicions següents (per separat) i que a més compleixen \(\{a, b,c\} \in \mathbb{N}\) i \(a>0\), \(b>0\) i \(c>0\):

  • \(a\) té el valor mínim entre els triangles rectangles que compleixen \(b>200\) i \(c>200\).
  • Té el perímetre mínim entre els triangles amb \(100<b<200\) i \(100<c<200\)
  • Té el perímetre mínim entre els triangles amb \(b>200\) i \(c>200\)

Exercici 14: Nombres primers

Escriviu programes que calculin:

  • Tots els nombres primers fins a 2000.
  • Tots els divisors de 1078139 que són primers.

Indicació: Una manera de comprovar que un nombre és primer és comprovar que no és divisible per cap nombre més petit que ell. Aquest és un mètode molt poc eficient però efectiu. Si voleu, podeu refinar el mètode o buscar-ne un de conegut que sigui més eficient.

Suggeriment: Escriviu primer una funció que torni si un nombre és primer o no i feu-la servir per escriure els programes que es demanen.

Zeros de funcions

Exercici 1

Representeu la funció \(f(x)=e^x-x^2\) i decidiu quantes arrels té.

Quines parelles de punts no serien un bons valors inicials pel mètode de la bisecció o el de la regula falsi? I pel de la secant?

  • -2 i 2
  • -1 i 1
  • -0,5 i 0,5
  • 0 i 1

Fent servir el mètode de la bisecció:

  • Trobeu un zero de la funció
  • Si \(x_i\) són les successives aproximacions a la rel i partim dels valors inicials \(x_0=2\) i \(x_1=-2\), quin serà el valor de \(x_5\)?
  • I quin seria el primer parell de valors (de l’esquerra i de la dreta) que tenen una separació inferior a \(10^{-4}\)?

Fent servir el mètode de Newton:

  • Trobeu un zero de la mateixa funció.
  • Partint del valor inicial \(x_0=0\), quin serà \(x_5\)?
  • I partint també de \(x_0=0\), quin serà el primer valor amb \(f(x_i)<10^{-5}\)?
  • I el primers punts \(x_i\) i \(x_{i+1}\) tal que \(|x_i-x_{i+1}|<10^{-5}\)?

Fent servir el mètode de la secant:

  • Trobeu un zero de la funció.
  • Si \(x_i\) són les successives aproximacions a la rel i partim dels valors inicials \(x_0=0\) i \(x_1=1\), quin serà el valor de \(x_5\)?
  • I quin serà el primer valor amb \(f(x_i)<10^{-5}\)?
  • I el primers punts \(x_i\) i \(x_{i+1}\) tal que \(|x_i-x_{i+1}|<10^{-5}\)?

Fent servir el mètode de la regula falsi:

  • Trobeu un zero de la funció
  • Si \(x_i\) són les successives aproximacions a la rel i partim dels valors inicials \(x_0=2\) i \(x_1=-2\), quin serà el valor de \(x_5\)?

Exercici 2

Considereu la funció \(f(x)=sin(x)+2\cdot sin(x/10)\)

Amb el mètode de Newton, trobeu una rel de la funció partint de \(x_0=25\).

  • Busqueu uns valors inicials adients als mètodes de la bisecció, la secant i la regula falsi per tal d’arribar a la mateixa arrel.

Amb el mètode de la bisecció, trobeu una rel de la funció partint de \(x_0=50\) i \(x_1=150\).

  • Busqueu uns valors inicials adients als mètodes de Newton, la secant i la regula falsi per tal d’arribar a la mateixa arrel.

Aproximació de funcions

Exercici 1

Als vídeos del seminari sobre aproximació de funcions amb polinomis se simulen les dades de l’experiment consistent en deixar caure un pes i mesurar en quin moment arriba a diferents distàncies.

h(m) t(s)
0 0.00
4 0.90
7 1.19
11 1.50
16 1.81

Al seminari hem intentat ajustar la funció \(t(h)\) amb diferents mètodes. Aquí intentarem ajustar la funció \(h(t)\).

  • Què creieu que passarà si intentem interpolar aquesta funció amb interpolació polinòmica pura? Podem preveure que alguns coeficients ens donin zero? Quins?

  • Ajusteu-hi un polinomi amb Matlab i comproveu si es compleix el que heu predit.

  • Aproximeu la funció amb tots els mètodes vistos al seminari (interpolació polinòmica pura, punt més proper (nearest), interpolació lineal i splines amb spline i pchip) i representeu les aproximacions.

  • Al gràfic amb les aproximacions afegiu-hi la gràfica de la funció, \(h(t) = \frac12 \cdot g \cdot t^2\) amb \(g=9,81\).

  • Amb cada una d’aquestes aproximacions, estimeu \(h(1)\). Compareu-les amb el valor real de la funció. Quina dóna la millor aproximació? És el que es podia esperar amb aquesta funció?

  • Amb help intp1 busqueu els valors del paràmetre METHOD de la funció intp1 que aproximen un valor d’acord amb el del punt conegut immediatament anterior o posterior. Compareu aquestes aproximacions amb la que fa nearest dibuixant-ne les gràfiques amb la de la funció.

Exercici 2

Trobeu una funció \(f(x)\) i quatre valors \(x_1, x_2, x_3\) i \(a\), tals que coneguts els valors de \(f(x)\) en \(x_1, x_2, x_3\), l’aproximació de \(f(a)\) sigui millor amb interpolació lineal que amb interpolació polinòmica pura.

Indicació: La solució no és única ni molt menys. Una possibilitat és buscar funcions que s’assembin més a dos segments de recta que a una paràbola.

Integració

Exercici 1 Campana de Gauss

Una funció important en estadística és la campana de Gauss o funció de densitat de probabilitat de la distribució normal:

\[\varphi(x)=\frac{1}{\sqrt{2 \cdot \pi}}\cdot e^{\frac{-x^2}{2}}\]

Sovint, de la funció \(\varphi\) el que ens interessa és la seva integral \(\Phi\):

\[\Phi(x)=\int_{-\infty}^x \varphi(t) \cdot dt = \int_{-\infty}^x\frac{1}{\sqrt{2 \cdot \pi}}\cdot e^{\frac{-t^2}{2}} \cdot dt\]

Desafortunadament, la funció \(\varphi(x)\) no es pot integrar analíticament, però la podem integrar numèricament. Per tal d’evitar haver de calcular integrals impròpies podeu aprofitar que se sap que \(\Phi(0)=0,5\).

  1. Calculeu \(\Phi(1)\), \(\Phi(2)\) i \(\Phi(4/3)\) amb cada un dels mètodes d’integració vistos a les pràctiques.

  2. Trobeu per quin valor de \(x\) es compleix que \(\Phi(x)=0.95\). Indicació: Recordeu que coneixeu mètodes per trobar zeros de funcions.

  3. Calculeu el valor de \(\Phi(x)\) per \(x \in \{0, 0.1, 0.2,...1.8, 1.9, 2.0\}\). Amb aquests valors aproximeu \(\Phi(x)\) pel mètode que us sembli més adient i calculeu \(\Phi(4/3)\).

Indicació: Podeu comprovar els resultats dels apartats d’aquest problema fent servir que Matlab té implementada la funció \(\Phi(x)\) com a cdf(“normal”, x, 0, 1)

Exercici 2 Àrea i moment d’inèrcia

Calculeu l’àrea, la coordenada y del centre de gravetat i el moment d’inèrcia respecte un eix horitzontal de les següents figures:

  1. La figura compresa entre la corba \(y=sin(x \cdot \pi)+1\), i les rectes \(x=0\), \(y=0\) i \(x=1\).

  1. La figura compresa entre la funció \(\varphi(x)=\frac{1}{\sqrt{2 \cdot \pi}}\cdot e^{\frac{-x^2}{2}}\) emprada al problema anterior i les rectes les rectes \(x=-3\), \(y=0\) i \(x=3\).

Indicació: Recordeu que per una figura compresa entre la gràfica d’una funció \(f(x)\), i les rectes \(x=a\), \(y=0\) i \(x=b\), l’àrea \(A\), la coordenada y del centre de gravetat \(y_{cg}\) i el moment d’inèrcia respecte un eix horitzontal que passa pel centre de gravetat \(I_x\) compleixen:

\[A = \int_a^b f(t) \cdot dt\] \[y_{cg} = \frac{1}{2 \cdot A}\int_a^b f(t)^2 \cdot dt\] \[I_x = \frac{1}{3}\int_a^b f(t)^3 \cdot dt - A \cdot (y_{cg})^2\]

Si no heu vist abans aquestes fórmules, es poden deduir calculant per una figura rectangular de base \(dt\) i altura \(f(t)\) i integrant.

Aprofitant que les figures són simètriques, els càlculs també es podrien fer integrant al llarg de l’eix y i fent servir les inverses de les funcions. Al vídeo del seminari en teniu un exemple.

Exercici 3 Pont del Golden Gate

El traçat dels cables de suspensió dels ponts penjats segueix aproximadament una paràbola. El tram més llarg del pont del Golden Gate té una longitud de 1280,2 m i els cables passen sobre les torres a una altura de 143,2 m per sobre del nivell del cable al centre del tram.

Trobeu la longitud de cada cable en aquest tram.

Indicació: Trobeu l’equació de la paràbola que segueix el cable i feu servir que la longitud de la gràfica d’una funció \(f(x)\) és:

\[l = \int_a^b \sqrt{1+(f'(x))^2} \cdot dx\]

Equacions diferencials

Exercici 1 Dipòsit cilíndric

Un dipòsit té una secció horitzontal constant de 5 m2 i un deguàs al fons de 0,01 m2 de secció. Al moment inicial el dipòsit és buit. S’hi aboca un cabal, que al moment inicial és 0 i va creixent linialment fins a arribar a 0,1 m3/s als 10 s i a partir d’aleshores es manté constant durant 50 s, quan es talla de cop.

Trobar el volum contingut al dipòsit en funció del temps.

Indicació: Feu servir la llei de Torricelli

Exercici 2 Oscil·lador

Una massa puntual de 0.5 kg està subjectada amb una molla de rigidesa 3 N/m, sense amortiment. Al moment inicial, deplacem la massa 1 m de la posició de repòs.

  1. Trobeu la posició i velocitat de la massa en els següents 10 segons. Sabent que la solució ha de ser una sinusoide, observeu com se n’aparten les solucions obtingudes amb els diferents mètodes.

Indicació: Convertiu l’equació diferencial de segon ordre en un sistema de dues equacions de primer ordre, fent servir com a variables la posició i la velocitat.

  1. Repetiu l’apartat anterior amb un amortiment de 0.1 N·s/m i de 2 N·s/m