Está en la página 1de 32

Ejercicios

1.-Variables
1.1.-Evaluar las siguientes expresiones para el valor dado de x
y=1x−3−5x2−x−6, x=2y=tanx−sinxx−sinx, x=π6y=12(1−x√)−13(1−x√3), x=3
 Solución
>> x=2;
>> y=1/(x-3)-5/(x^2-x-6)
y = 0.2500

>> x=pi/6;
>> y=(tan(x)-sin(x))/(x-sin(x))
y = 3.2777

>> x=3;
>> y=1/(2*(1-sqrt(x)))-1/(3*(1-nthroot(x,3)))
y = 0.0707

1.2.-La longitud del arco de parábola de la figura es

s=12b2+16a2−−−−−−−−√+b28aln(4a+b2+16a2−−−−−−−−√b)

Calcular s para a=12 y b=8
 Solución
>> a=12; b=8;
>> s=sqrt(b^2+16*a^2)/2+b^2*log((4*a+sqrt(b^2+16*a^2))/b)/(8*a)
s = 25.9922

1.3.-Un proyectil se dispara con un ángulo θ y una velocidad inicial v0.


Calcular el alcance horizontal, la altura máxima y el tiempo de vuelo del
proyectil, desde que sale hasta que impacta con el suelo
θ=60°, v0=600 m/s, g=10 m/s2.
xmax=v20gsin(2θ)ymax=v202gsin2θtvuelo=2v0gsinθ
 Solución
>> th=60; v0=600; g=10;
>> x_max=v0^2*sind(2*th)/g
x_max = 3.1177e+004
>> y_max=v0^2*sind(th)^2/(2*g)
y_max = 1.3500e+004
>> t_vuelo=2*v0*sind(th)/g
t_vuelo = 103.9230

1.4.-Ley del enfriamiento de Newton


T=Ts+(T0−Ts)e−kt
La temperatura ambiente es Ts=20, la temperatura inicial del
cuerpo T0=5. Calcular la temperatura T del cuerpo en el instante t=3,
sabiendo que k=0.45.
 Solución
>> Ts=20; T0=5; k=0.45;
>> T=Ts+(T0-Ts)*exp(-k*3)
T = 16.111396090311629

2.-Vectores y matrices
2.1.-Crear el vector que contenga los números pares entre 10 y cero.
Crear un vector que contenga los múltiplos de 3 entre 6 y 36, ambos
inclusive.
 Solución
>> x=10:-2:0
x = 10 8 6 4 2 0
>> x=6:3:36
x = 6 9 12 15 18 21 24 27 30 33
36

2.2.-Crear una matriz 3×2 y otra de 2×3con los vectores u=[1,0,-


3]; v=[4,1,-2];
 Calcular el producto u.*v y cociente u./v elemento a elemento de los
dos vectores
 Calcular el producto escalar de los dos vectores y el ángulo entre ellos
u⃗ ⋅v⃗ =u⋅v⋅cosθ
 Solución
>> u=[1,0,-3]; v=[4,1,-2];
>> A=[u',v']
A =
1 4
0 1
-3 -2
>> A=[u;v]
A =
1 0 -3
4 1 -2

>> u.*v
ans =
4 0 6
>> u./v
ans = 0.2500 0 1.5000

>> p=u*v'
p = 10
>> th=acosd(p/(norm(u)*norm(v)))
th = 46.3647

2.3.-Sea el vector u=2:3:18;
 Acceder a los tres primeros elementos del vector u
 Acceder al segundo, cuarto y sexto elementos del vector u
 Acceder al sexto, cuarto y sexto elemento del vector u
 Acceder a los tres últimos elementos del vector u
 Acceder al primero, tercero y cuarto elementos del vector u
 Solución
>> u=2:3:18
u = 2 5 8 11 14 17
>> u(1:3)
ans = 2 5 8
>> u(2:2:6)
ans = 5 11 17
>> u(end-2:end)
ans = 11 14 17
>> u([1,3,4])
ans = 2 8 11

2.4.-Crear la matriz A=[10:-1:4;ones(1,7);2:2:14;zeros(1,7)] con lápiz y


papel y luego, comprobar con MATLAB
 Obtener la matriz B=A([1,3],[1,3,5:7]) con lápiz y papel y luego,
comprobar con MATLAB
 Solución
>> A=[10:-1:4;ones(1,7);2:2:14;zeros(1,7)]
A =
10 9 8 7 6 5 4
1 1 1 1 1 1 1
2 4 6 8 10 12 14
0 0 0 0 0 0 0
>> B=A([1,3],[1,3,5:7])
B =
10 8 6 5 4
2 6 10 12 14

2.5.-Crear estas dos matrices A y B sin inicializar cada elemento de la


matriz, en una sola línea en la ventana de comandos
⎛⎝⎜⎜⎜⎜⎜⎜1234500000−6−4−202⎞⎠⎟⎟⎟⎟⎟⎟
⎛⎝⎜⎜⎜1010−63520−451030−27154009205021125604⎞⎠⎟⎟⎟
 Eliminar la última fila de la primera matriz y la tercera columna de la
segunda matriz
 Solución
>> A=[(1:5)',zeros(5,1),(-6:2:2)']
A =
1 0 -6
2 0 -4
3 0 -2
4 0 0
5 0 2
>> B=[1:2:11;0:5:25;10:10:60;-6:2:4]
B =
1 3 5 7 9 11
0 5 10 15 20 25
10 20 30 40 50 60
-6 -4 -2 0 2 4
>> A(end,:)=[]
A =
1 3 5 7 9 11
0 5 10 15 20 25
10 20 30 40 50 60
>> B(:,3)=[]
B =
1 3 7 9 11
0 5 15 20 25
10 20 40 50 60
-6 -4 0 2 4

2.6.-Crear la matriz B de 5×6 a partir de un vector A de 30 elementos


utilizando el comando reshape, y acceder a los elementos marcados en
color rojo

Nota: reshape(A,m,n) crea una matriz m×n a partir de los elementos de


la matriz A que debe tener m·nelementos.
 Solución
>> A=1:30;
>> B=reshape(A,5,6)
B =
1 6 11 16 21 26
2 7 12 17 22 27
3 8 13 18 23 28
4 9 14 19 24 29
5 10 15 20 25 30
>> B([3,4,5],[4,5])
ans =
18 23
19 24
20 25
>> B(2:4,3:5)
ans =
12 17 22
13 18 23
14 19 24
>> B(2:end,end)
ans =
27
28
29
30
>> B(end,3:5)
ans =
15 20 25

2.7. Sea la matriz


⎛⎝⎜0−202323−1−445−3211⎞⎠⎟
 Crear un vector columna de nueve elementos que contenga los
elementos de la primera, tercera y cuarta columna
 Crear un vector fila de ocho elementos, que contenga los elementos de
la sugunda fila y de la tercera columna
 Crear un vector fila de cinco elementos que contenga los dos últimos
elementos de la última columna y los tres primeros elementos de la
primera fila.
 Solución
>> A=[0,2,3,4,2;-2,3,-1,5,1;0,2,-4,-3,1]
A =
0 2 3 4 2
-2 3 -1 5 1
0 2 -4 -3 1
>> u=[A(:,1);A(:,3);A(:,4)]
u =
0
-2
0
3
-1
-4
4
5
-3
>> u=[A(2,:),A(:,3)']
u =
-2 3 -1 5 1 3 -1 -4
>> u=[A(end-1:end,end)',A(1,1:3)]
u = 1 1 0 2 3

2.8.- Crear una tabla de valores del coseno de los ángulos comprendidos
entre 0 y 180, de 30 en 30 grados
ángulo coseno
0  
30  
60  
...  

 Solución
>> ang=0:30:180;
>> y=cosd(ang);
>> [ang',y']
ans =
0 1.0000
30.0000 0.8660
60.0000 0.5000
90.0000 0
120.0000 -0.5000
150.0000 -0.8660
180.0000 -1.0000

2.9.-Sean las matrices


A=(140−2−1−3) B=(11−2−132)

Realizar las siguientes operaciones con lápiz y papel y comprobar luego


con MATLAB
A*BT(el superíndice T indica traspuesta)
AT*B
A.*B (producto elemento a elemento)
A./B
 Solución
>> A=[1,0,-1;4,-2,-3]
A =
1 0 -1
4 -2 -3
>> B=[1,-2,3;1,-1,2]
B =
1 -2 3
1 -1 2
>> A*B'
ans =
-2 -1
-1 0
>> A'*B
ans =
5 -6 11
-2 2 -4
-4 5 -9
>> A.*B
ans =
1 0 -3
4 2 -6
>> A./B
ans =
1.0000 0 -0.3333
4.0000 2.0000 -1.5000

2.10 Sean las matrices


A=⎛⎝⎜230411−1−54⎞⎠⎟ B=⎛⎝⎜−2−3−1526079⎞⎠⎟ 
C=⎛⎝⎜02431650−3⎞⎠⎟
Comprobar si son verdaderas o falsas estas afirmaciones:
A+(B+C)= (A+B)+C, propiedad asociativa
2(A+B)=2A+2B
A*(B+C)=A*B+A*C, propiedad distributiva
A*B=B*A, propiedad conmutativa
(A*B)T=BT*AT
(A*B)*C=A*(B*C)
(A+B)T=AT+BT
 
2.11.-Resolver el sistema de tres ecuaciones mediante la
operación X=A\b. donde A es la matriz de los coeficientes, b es el vector
de los términos indpendientes y X es el vector de las incógnitas.
⎧⎩⎨⎪⎪4x−2y+6z=82x+8y+2z=46x+10y+3z=0⎛⎝⎜426−2810623⎞⎠⎟
⎛⎝⎜xyz⎞⎠⎟=⎛⎝⎜840⎞⎠⎟
 Solución
>> A=[4,-2,6;2,8,2;6,10,3]
A =
4 -2 6
2 8 2
6 10 3
>> b=[8;4;0]
b =
8
4
0
>> X=A\b
X =
-1.8049
0.2927
2.6341
>> A*X
ans =
8.0000
4.0000
0

2.12. Dado el vector de datos u=[5, 9, 2, 4, 1, 12, 7, 6, 5, 8];


 El valor máximo y el índice de dicho elemento en el vector u
 El valor mínimo y el índice de dicho elemento en el vector u
 La suma de todos los elementos
 El producto de todos los elementos
 El valor medio
 Crear un vector v a partir del u pero con los elementos ordenados en
orden ascendente, utilizando la función sort
 Solución
>> u=[5,9,2,4,1,12,7,6,5,8]
u =
5 9 2 4 1 12 7 6 5 8
>> [m,k]=max(u)
m = 12
k = 6
>> [m,k]=min(u)
m = 1
k = 5
>> sum(u)
ans = 59
>> prod(u)
ans = 7257600
>> mean(u)
ans = 5.9000
>> v=sort(u)
v = 1 2 4 5 5 6 7 8 9 12

2.13. Crear una tabla de valores de la función


y=x2−2x+4
para los siguientes valores de x: -3, -2, -1, 0, 1, 2, 3
 Solución
>> x=-3:3;
>> y=(x.^2-2)./(x+4);
>> [x',y']
ans =
-3.0000 7.0000
-2.0000 1.0000
-1.0000 -0.3333
0 -0.5000
1.0000 -0.2000
2.0000 0.3333
3.0000 1.0000

2.14. Comprobar que


limx→0sinxx=1
 Establecer el formato largo para expresar los números con 15 decimales
(format long)
 Crear un vector x cuyos elementos son 1,0.1, 0.01,0.001,...y calcular el
cociente sin(x)/x. Regresar al formato por defecto( format short)
 Solución
>> format long
>> n=0:5;
>> x=1./10.^n;
>> y=sin(x)./x;
>> [x',y']
ans =
1.000000000000000 0.841470984807897
0.100000000000000 0.998334166468282
0.010000000000000 0.999983333416666
0.001000000000000 0.999999833333342
0.000100000000000 0.999999998333333
0.000010000000000 0.999999999983333
>> format short

2.15.-Comprobar que la suma

∑n=1∞12n=1
 Establecer el formato, 15 decimales (format long). Calcular la suma
(a) n=10, (b) n=20, (c) n=40.
 Crear el vector n, luego el vector y=1/2n, y sumar los elementos del
vector y con la función sum de MATLAB
 Restaurar el formato por defecto
 Solución
>> format long
>> n=1:10;
>> y=1./2.^n;
>> sum(y)
ans = 0.999023437500000
>> format short
2.16. Comprobar que la suma

12−−√∑n=0∞(−3)−n2n+1=π

Calcular la suma (a) n=10, (b) n=20, (c) n=40.


 Solución
>> format long
>> n=0:10;
>> y=sqrt(12)*(-3).^(-n)./(2*n+1);
>> sum(y)
ans = 3.141593304503082
>> pi
ans = 3.141592653589793
>> format short

2.17.-Comprobar
π4=1−13+15−17+19+...
 Solución
>> n=1:4:10001;
>> sum(1./n-1./(n+2))
ans = 0.7853
>> pi/4
ans = 0.7854

>> n=1:2:10001;
>> sum((-1).^((n-1)/2)./n)
ans = 0.7854

3.-Gráficos
3.1 La población de Estados Unidos se puede modelar mediante la
siguiente fñormula
y=1972730001+e−0.03134(t−1913.25)
donde t es el tiempo en años. Hacer un gráfico que muestre la población
de USA cada 10 años desde el año 1790 hasta el 2000. Crear un script
 Solución
t=1790:10:2000;
y=197273000./(1+exp(-0.03134*(t-1913.25)));
plot(t,y)
axis tight
xlabel('año')
ylabel('n. habitantes')
title('Población USA 1790-2000')

3.2 Dibujar la función y=3x3-26x+10, su derivada primera y su derivada


segunda, en el intervalo -2≤x≤4, en la misma gráfica y con distintos
colores y estilo de línea. Crear un script
 Solución
x=linspace(-2,4,200);
y=3*x.^3-26*x+10;
y1=9*x.^2-26;
y2=18*x;
plot(x,y,'b',x,y1,'-.r',x,y2,'--g')
legend('función','derivada primera','derivada segunda',0)
xlabel('x')
ylabel('y, dy/dx,d^2y/dx^2')
title('Trazado de funciones')
grid on

3.3 Dibujar una curva cicloide, que en ecuaciones paramétricas es


x=r(t-sint),
y=r(t-cost),
Tomar r=1.5 y 0≤t≤4π
 Solución
r=1.5;
t=linspace(0,4*pi,200);
x=r*(t-sin(t));
y=r*(1-cos(t));
plot(x,y,'r')
axis equal
grid on
xlabel('x')
ylabel('y')
title('Cicloide')

3.4. Dibujar la superposición x1+x2 de dos Movimientos Armónicos


Simples de la misma dirección y distinta frecuencia en el intervalo
0≤t≤4π,
x1=sin(t)
x2 =sin(2t)
Superponer en el mismo gráfico la amplitud modulada (envolvente) en
color diferente y con grosor de línea1.5
 Solución
t=linspace(0,5*pi,400);
x=sin(5*t)+sin(6*t);
y=2*cos(0.5*t);
hold on
plot(t,x,'b')
plot(t,y,'r','linewidth',1.5)
plot(t,-y,'r','linewidth',1.5)
hold off
title('Suma de armónicos')
xlabel('t')
ylabel('x')
set(gca,'XTick',0:pi:5*pi)
set(gca,'XTickLabel',{'0','pi','2pi','3pi','4pi','5pi'})

3.5.Tiro parabólico
Un cuerpo se lanza desde la altura y0con velocidad v0, que hace un
ángulo θ con la horizontal.
Las ecuaciones del movimiento son:
x=v0cosθ⋅ty=y0+v0sinθ⋅t+12(−g)t2
La ecuación de la trayectoria del móvil es
y=y0+xtanθ−g2x2v20cos2θ=y0+xtanθ−x2g2v20(1+tan2θ)
Dados los datos de la altura inicial y0, la velocidad inicial v0 y el ángulo
de tiro θ calcular el alcance horizontal y el tiempo de vuelo del proyectil,
cuando llega al suelo y=0.
Escribir el script parabolico que produzca una gráfica semejante a la de
la figura (más abajo) y que realice las siguientes tareas:
1. Establezca mediante comandos input, los valores de la altura y0,
velocidad inicial v0 y ángulo de tiro θ
2. Determine el tiempo de vuelo calculando una de las raíces de la
ecuación de segundo grado
3. Calcular el alcance, conocido el tiempo de vuelo
4. Represente la trayectoria y la decore con título, etiquetas en el eje X y
en el eje Y. Utilice el comando axis para estabecer nuevos valores
máximos y mínimos para el eje X y para el eje Y distintos de los que
MATLAB establece por defecto
5. Utilice el comando text, para que apareza en algún lugar de la gráfica,
los datos del tiempo de vuelo y del alcance
Ejemplo: Un cañón dispara una bala desde lo alto de un acantilado de
100 m de altura con una velocidad de 46 m/s haciendo un ángulo de 30°
por encima de la horizontal. Tomar g=10 m/s2
>> parabolico
altura: 100
velocidad inicial: 46
ángulo:30
 Solución
Escribimos el script parabolico
%entrada: altura, velocidad inicial y ángulo de tiro
y0=input('altura: ');
v0=input('velocidad inicial: ');
ang=input('ángulo:');
g=10;

%calcula el tiempo de vuelo tf, resolviendo la ecuación de


segundo grado
a=-g/2; b=v0*sind(ang); c=y0;
tf=(-b-sqrt(b*b-4*a*c))/(2*a);
%calcula el alcance
xf=v0*cosd(ang)*tf;

%representación gráfica de la trayectoria


x=linspace(0,xf,50);
y=y0+x*tand(ang)-x.ˆ2*(g/(2*v0*v0))*(1+tand(ang)*tand(ang));
plot(x,y,'r')
xlabel('x')
ylabel('y')
title('tiro parabólico')
grid on
axis([0,xf+50,-10,max(y)+10])

%marca el alcance con una línea horizontal de color negro


line([0 xf], [0 0],'color','k')

%dato del alcance


text(xf,0,num2str(xf))
%dato del tiempo de vuelo
text(xf,max(y),'tiempo')
text(xf,max(y)-10,num2str(tf))
3.6.-Tiro parabólico 3D
Se dispara un proyectil con velocidad de 60 m/s haciendo un ángulo de
30°, desde la ventana del vagón de un tren en movimiento a lo largo del
eje X con velocidad de 20 m/s. Tómese g=10 m/s2
 Representar la trayectoria del proyectil
Ecuaciones del movimiento
⎧⎩⎨⎪⎪ay=0ax=0az=−10 ⎧⎩⎨⎪⎪vy=20vx=303√vz=30−10⋅t 
⎧⎩⎨⎪⎪y=20tx=303√⋅tz=30⋅t−5⋅t2
Comprobar que
 El proyectil alcanza la máxima altura cuando vz=0, en el instante t=3 s,
la altura es de zmax=45 m.
 El proyectil impacta contra el suelo cuando z=0, en el instante t=6 s. En
este instante las coordenadas del punto de impacto son: x=120
m, y=311.8 m

 Solución
t=linspace(0,6,50);
z=30*t-5*t.^2;
x=30*sqrt(3)*t;
y=20*t;
plot3(x,y,z,'r')
grid on
axis([0 350 0 150 0 50])
xlabel('x (m)'); ylabel('y (m)'); zlabel('z (m)')

Utilizar la herramienta Rotate 3D del menú Figure Window para


cambiar el ángulo de visualización de la parábola.
3.7.-Dibujar al función
z=xy2x2+y2−1≤x≤3 1≤y≤4

 Solución
x=-1:0.1:3;
y=1:0.1:4;
[X,Y]=meshgrid(x,y);
Z=(X.*Y.^2)./(X.^2+Y.^2);
mesh(X,Y,Z);
xlabel('X')
ylabel('Y')
zlabel('Z')

3.8. Dibujar la función


z=rθ0≤θ≤360 0≤r≤2
Utilizar la función pol2cart para convertir cocordendas polares a
coordenadas rectangulares.
 Solución
r=0:0.1:2;
angulo=(0:5:360)*pi/180;
[Ang,Radio]=meshgrid(angulo,r);
Z=Radio.*Ang;
[X,Y] = pol2cart(Ang,Radio);
mesh(X,Y,Z)

4.-Funciones
4.1. Escribir una función que convierta grados F (Fahrenheit) a grados C
(Celsius) de acuerdo con la siguiente fórmula
C=59(F−32)
>> gradosF_C(32)
ans = 0
>> gradosF_C(212)
ans = 100

La definición de la función gradosF_C es
 Solución
function gC = gradosF_C(gF )
gC=5*(gF-32)/9;
end

Otra forma
>> gradosF_C=@(x) 5*(x-32)/9;
>> gradosF_C(32)
ans = 0
>> gradosF_C(212)
ans = 100

4.2. Las nuevas coordendas (X,Y) de un punto (x,y) del plano que es
girado alrededor del eje Z un ángulo θ (en el sentido de las agujas del
reloj) viene dado por

{X=xcosθ−ysinθY=xsinθ+ycosθ(XY)=(cosθsinθ−sinθcosθ)(xy)

Utilizar el comando compass para dibujar el vector posición r=xi+yj y


correspondiente el vector girado R=Xi+Yjun ángulo θ.
>> u=[sqrt(3);1];
>> ang=120;
>> v=rotacion(ang,u)
v =
-1.7321
1.0000
>> hold on
>> compass(u(1),u(2))
>> compass(v(1),v(2))
>> hold off

Definimos la función rotacion
 Solución
function v = rotacion(ang,u)
R=[cosd(ang),-sind(ang);sind(ang),cosd(ang)];
v=R*u;
end

5.-Sentencias condicionales
5.1.-Sea el vector x=[-4,0,5,-3,0,3,7,-1,6];
Contar cuantos elementos del vector son positivos, negativos o nulos
 Solución
>> x=[-4,0,5,-3,0,3,7,-1,6];
>> ne=sum(x<0)
ne = 3
>> pos=sum(x>0)
pos = 4
>> cero=sum(x==0)
cero = 2

5.2.-Una empresa paga los siguientes tipos de salario anual: 12000,


15000, 18000, 24000, 35000, 50000 y 70000. El número de empleados
en cada una de las categorías es: 3000, 2500, 1500, 1000, 400, 100 y 25.
Calcular:
 El número total de empleados
 El número de empleados de la empresa cuyos salarios son superiores a
32000 e inferiores a dicha cantidad
 El salario medio por empleado en la empresa (media ponderada)
 Solución
>> salario=[12000,15000,18000,24000,35000,50000,70000];
>> empleados=[3000,2500,1500,1000,400,100,25];
>> n_empleados=sum(empleados)
n_empleados = 8525
>> u=salario>32000
u = 0 0 0 0 1 1 1
>> u.*empleados
ans = 0 0 0 0 400 100 25
>> n_alto=sum(u.*empleados)
n_alto = 525
>> n_bajo=n_empleados-n_alto
n_bajo = 8000
>> salario_medio=sum(empleados.*salario)/n_empleados
salario_medio = 1.7038e+004

5.3. Crear un script que realice la siguiente tarea: cuando se proporciona


una medida de longitud expresada en mm, cm, dm, m, km se obtiene la
respuesta de dicha medida convertida a m (metros). Por
ejemplo, medida=50 yunidad='cm' aparece
0.5 m

El script es el siguiente
 Solución
medida=50;
unidad='cm';
switch (unidad)
case {'km', 'kilómetro'}
y=1000*medida;
case {'m', 'metro'}
y=medida;
case {'dm', 'decímetro'}
y=medida/10;
case {'cm', 'centímetro'}
y=medida/100;
case {'mm', 'milímetro'}
y=medida/1000;
otherwise
disp(['Unidad desconocida: ', unidad])
end
disp([num2str(y),' m'])

5.4. El recibo de la electricidad de los residentes en una determinada


ciudad se calcula del siguinete modo:
1. Si se consumen 500 Kwh o menos el coste es de 2 céntimos por Kwh
2. Si se consumen más de 500 Kwh y pero no más de 1000 el coste es 10
euros por los primeros 500 Kwh y 5 céntimos por Kwh para el
consumo que exceda los 500 Kwh
3. Si se consumen más de 1000 Kwh el coste es 35 euros por los primeros
1000 Kwh y 10 céntimos por Kwh para el consumo que exceda los
1000 Kwh
4. La compañía eléctrica incluye un gasto fijo de 5 euros, independiente
del consumo.
Las lecturas del contador de electricidad de cinco familias ha sido el
siguiente: 200, 500, 700, 1000, 1500 Kwh, respectivamente. Mostrar los
resultados del cálculo en dos columnas, una del cosumo y la otra del
coste de la electricidad consumida.
200 9
500 15
700 25
1000 40
1500 90

 Solución
consumo=[200,500,700,1000,1500];
coste=5+10*(consumo>500)+25*(consumo>1000);
coste=coste+0.02*(consumo<=500).*consumo;
coste=coste+0.05*(consumo>500 & consumo<=1000).*(consumo-500);
coste=coste+0.1*(consumo>1000).*(consumo-1000);
disp([consumo',coste'])

5.5. Escribir una función que convierta las coordendas


rectangulares x e y a polares r, θ.
>> [r,ang]=r_polar(sqrt(3),1)
r = 2.0000
ang = 0.5236
>> [r,ang]=r_polar(-sqrt(3),-1)
r = 2.0000
ang = 3.6652
>> [r,ang]=r_polar(sqrt(3),-1)
r = 2.0000
ang = 5.7596

La definición de la función r_polar es
 Solución
function [r,ang] = r_polar(x,y)
r=sqrt(x^2+y^2);
ang=atan2(y,x);
if ang<0
ang=ang+2*pi;
end
end

6.-Sentencias iterativas
6.1.-Comprobar, utilizando un bucle for
π4=1−13+15−17+19+...
 Solución
sgn=1;
s=0;
for n=1:2:99
sgn=-sgn;
s=s+sgn/n;
end
disp([pi/4,s])

6.2. Cálculo de raíz cuadrada de un número n, mediante el siguiente


algoritmo
1. Establecer el formato a 15 decimales, (long)
2. Establecer el valor inicial de n
3. Establecer el valor inicial de x en n/2
4. Repetir seis veces
o Reemplazar x por (x+n/x)/2
5. Mostrar la raíz cuadrada de n y x.
6. Restaurar el formato por defecto, (short)
 Solución
format long
n=2;
x=n/2;
for i=1:6
x=(x+n/x)/2;
end
disp([sqrt(n),x])
format short

6.3.-El número irracional π


Para hallar la longitud de una circunferencia de radio R, primero se
calcula el perímetro de un triángulo equilátero (3 lados) inscrito en dicha
circunferencia, luego, de un hexágono (6 lados), un dodecágono (12
lados) y así, sucesivamente. El límite de la sucesión de perímetros es
precisamente la longitud de la circunferencia 2πR.
Si tomamos una circunferencia de radio unidad, al dividir entre dos los
valores de los perímetros iremos obteniendo las sucesivas
aproximaciones del número irracional π.

Podemos calcular la longitud del lado an un polígono regular de n lados


inscrito en la circunferencia de radio R, (en color rojo).

an=2Rsin(πn)

Del mismo modo, obtenemos la longitud del lado de un polígono regular


inscrito de 2n lados (en color azul)

a2n=2Rsin(π2n)

Teniendo en cuenta que sin(α2)=1−cosα2−−−−−−−−√

Establecemos la relación entre an y a2n y por tanto, entre el


perímetro Pn del polígono regular de n lados y el perímetro P2n del
polígono regular de 2n lados.

P2n=2nR2−4−P2nR2n2−−−−−−−−√−−−−−−−−−−−−−⎷

Tomando como radio R, la unidad


Para un triángulo, n=3, la longitud del lado es a3=2sin60°, y el
perímetro  P3=33√
 Para un hexágono, n=6, la longitud del lado es a6=2sin30°=1, y el
perímetro P6=6.
 y así, sucesivamente.
Para obtener las sucesivas aproximaciones del número irracional π
mediante la fórmula anterior procedemos del siguiente modo:
1. Partimos del valor del perímetro P de un triángulo equilátero inscrito
en una circunferencia de radio unidad, el valor de n es 3.
2. Calculamos el perímetro P de un polígono de 2n lados a partir del valor
del perímetro de un polígono regular de n lados.
3. El valor obtenido P será el valor del perímetro de un polígono regular
de n=2n lados.
4. Se imprime el valor de P dividido entre dos (aproximación de π)
5. Se vuelve al paso 2.
6 lados, aproximación de pi: 3.00000000
12 lados, aproximación de pi: 3.10582854
24 lados, aproximación de pi: 3.13262861
48 lados, aproximación de pi: 3.13935020
96 lados, aproximación de pi: 3.14103195

El script es el siguiente
 Solución
perimetro=3*sqrt(3);
n=3;
iter=5;
for i=1:iter
perimetro=2*n*sqrt(2.0-sqrt(4.0-
(perimetro/n)*(perimetro/n)));
n=2*n;
fprintf('%i lados, aproximación de pi:
%1.8f\n',n,perimetro/2)
end

6.4-Desarrollo en serie
El desarrollo en serie de sin(x) es

sin(x)≈x−13!x3+15!x5−...sin(x)=limN→∞∑n=0N(−1)nx2n+1(2n+1)!

Comparar el valor dado por la función MATLAB sin(x) con el valor


obtenido al sumar un número determinado de términos (5, 10, 15..) del
desarrollo en serie para un argumento dado, por ejemplo, x=π/6 (30
grados).
Definir una función denominada serie_sin que admita como parámetros
el número n de términos de la serie y el argumento x (radianes) de la
función sin.
>> format long
>> serie_sin(2,pi/6)
ans = 0.499674179394364
>> serie_sin(5,pi/6)
ans = 0.500000000020280
>> sin(pi/6)
ans = 0.500000000000000
>> format short

La definición de la función serie_sin es la siguiente


 Solución
function resultado=serie_sin(n,x)
resultado=x;
signo=-1;
for i=3:2:2*n-1
resultado=resultado+signo*x^i/factorial(i);
signo=-signo;
end
end
Repetir este ejercicio pero con la función coseno

cos(x)=limN→∞∑n=0N(−1)nx2n(2n)!

6.5.-Generar un número aleatorio entero entre 1 y 10 mediante la


función randi. Este es el número secreto que hay que adivinar. Utilizar el
bucle while del que se sale cuando el usuario introduce mediante el
comando input el número correcto. Orientar al usuario si el número que
prueba es mayor o menor que el número secreto
¿Cuál es el número secreto?: 3
Es más pequeño
¿Cuál es el número secreto?: 2
Es más pequeño
¿Cuál es el número secreto?: 1
Has acertado

El script es el siguiente:
 Solución
secreto=randi(10,1);
numero=input('¿Cuál es el número secreto?: ');
while(numero~=secreto)
if(numero>secreto)
disp('Es más pequeño')
else
disp('Es más grande')
end
numero=input('¿Cuál es el número secreto?: ');
end
disp('Has acertado')

6.6.-Ordenar una lista de números

Para ordenar una lista de números emplearemos el método de la burbuja,


un método tan simple como poco eficaz. Se compara el primer elemento,
índice 0, con todos los demás elementos de la lista, si el primer elemento
es mayor que el elemento j, se intercambian sus valores, siguiendo el
procedimiento explicado en la figura. Se continua este procedimiento
con todos los elementos del array menos el último. La figura explica de
forma gráfica este procedimiento.
Crear una función denominada ordenar que devuelva un vector
ordenado en orden ascendente cuando se le pasa un vector de datos
desordenado
Llamamos a la función ordenar y le pasamos el vector de datos
desordenados: 1.65 1.82 1.72 1.75 1.73 1.85 1.90 1.74 1.76 1.77
>> ordenar([1.65 1.82 1.72 1.75 1.73 1.85 1.90 1.74 1.76 1.77])
ans = 1.6500 1.7200 1.7300 1.7400 1.7500 1.7600 1.7700
1.8200 1.8500 1.9000

La definición de la función ordenar es
 Solución
function x=ordenar(x)
n=length(x);
for i=1:n
for j=i+1:n
if x(i)>x(j)
aux=x(j);
x(j)=x(i);
x(i)=aux;
end
end
end
end

MATLAB dispone de una función denominada sort que realiza la misma


tarea
>> sort([1.65 1.82 1.72 1.75 1.73 1.85 1.90 1.74 1.76 1.77])

En el caso de tablas bidimensionales o multidimensionales, podemos


elaborar nuestra propia versión de la función ordenar, pero MATLAB
dispone de la función sortrows que realiza esta tarea. Por ejemplo,
queremos odenar la siguiente tabla primero por días y después por
temperaturas
Día Temperatura
15 21
3 32
17 15
21 19
8 35
>> a=[15 21; 3 32; 17 15; 21 19; 8 35]
a =
15 21
3 32
17 15
21 19
8 35
>> sort(a,1)
ans =
3 15
8 19
15 21
17 32
21 35
>> sortrows(a,1)
ans =
3 32
8 35
15 21
17 15
21 19
>> sortrows(a,2)
ans =
17 15
21 19
15 21
3 32
8 35

Fijarse en la importante diferencia entre los resultados de las llamadas


a sort(a,1) y sortrows(a,1)
6.7.-Los primeros polinomios de Legendre y la fórmula de recurrencia
son, respectivamente
P0(x)=1P1(x)=xP2(x)=12(3x2−1)P3(x)=12(5x3−3x)P4(x)=18(35x4−30x2+3
)P5(x)=18(63x5−70x3+15x)P6(x)=116(231x6−315x4+105x2−5)...
(n+1)Pn+1=(2n+1)xPn−nPn−1
Define una función recursiva legendre(n,x) para representar
gráficamente los cinco primeros polinomios de Legendre para -1≤x≤1.
Utilizar la función plot para representar cada uno de los polinomios con
la siguientes opciones
plot(x,y,color(n),'displayName',num2str(n))
....
legend('-DynamicLegend','location','Best')
Definir un vector de cinco colores, color(n) es el elemento n de dicho
vector. Los otros dos parámetros nos permiten identificar cada una de
las curvas mediante el comando legend.
 Solución
function res=legendre(n, x)
if n==0
res=1;
elseif n==1
res=x;
else
res=((2*(n-1)+1)*x*legendre(n-1,x)-
(n-1)*legendre(n-2,x))/n;
end
end
El script para representar los polinomios de Legendre
x=-1:0.05:1;
y=zeros(length(x),1);
color=['b' 'g' 'r' 'm' 'k'];
hold on
for n=1:5
for i=1:length(x)
y(i)=legendre(n,x(i));
end

plot(x,y,color(n),'displayName',num2str(n))
end
title('Polinomios de Legendre')
xlabel('x')
ylabel('y')
legend('-DynamicLegend','location','Best')
grid on
hold off

Energías Renovables ©EUITI de Eibar

El Estudio de Riesgos de los Grifos Flotantes deberá considerar también los riesgos que
implica la construcción y operación de las instalaciones para la recepción, almacenamiento,
transferencia y despacho de combustibles en la orilla del mar, río o lago y de su entorno
correspondiente. Artículo 101. Declaración de Impacto Ambiental DIA

Declaración de Impacto Ambiental (DIA)

El contenido de un DIA se encuentra contemplado en el Anexo VI del D.S.019-2009-MINAM –


Aprueban el Reglamento de la Ley N° 27446, Ley de Sistema Nacional de Evaluación de Impacto
Ambiental. Los plazos para su evaluación ante la Autoridad Competente se encuentran establecidos
en el artículo 24° del D.S. 039-2014-EM.

 ZONA DE TANQUES DE ALMACENAMIENTO:En el futuro establecimiento, se instalará tres (3) tanques de


almacenamiento de combustible líquido,siendo cada uno de ellos de un solo compartimiento, en donde se almacenará
Diesel B5, Gasohol 84Plus y Gasohol 90 Plus, para ser suministrado a través de dos surtidores a los vehículos que
circulanpor zona, los mismos que estarán debidamente instalado en la cada isla de despacho, con undispensador en
cada una. Los tanques serán fabricados respetando las exigencias técnicas del D.S.Nº 052-93-EM, D.S.Nº 054-
93-EM y sus modificatorias, cuyas especificaciones técnicas másprincipales serán las que se describen en el
cuadro siguiente:ESPECIFICACIONES TÉCNICAS | CARACTERÍSTICAS |* Forma * Posición * Plancha de acero1
tanque de 1 compartimiento * Diámetro * Longitud *Capacidad de almacenamiento 1 tanque de 1 compartimientos *
Diámetro * Longitud * Capacidad dealmacenamiento 1 tanque de 1 compartimiento - Diámetro * Longitud * Capacidad
de
almacenamiento * Tipo de Instalación | * Cilíndrica * Horizontal * 3/16” de espesorDimensiones * 1.94
m. * 2.60 m. * 2,030.00 galones Dimensiones * 1.54 m. * 4.17 m. * 2,052.00 galones Dimensiones *2.30 m. * 3.60 m. *
3,950.00 galones * Enterrados |Los tanques que se instalarán en el Proyecto de una Estación de Servicios, estarán
asentados sobreuna capa de arena fina compactada, la cual a su vez estará sobre una losa de concreto, dentro deuna
fosa construida de material noble (cimentación, columnas, pared de ladrillo, etc.), conservandouna distancia de 0.50 m.
entre el tanque y las paredes, a fin de permitir una adecuada compactación del material de relleno con arena fina. Los
tanques además tendrán una protección exterior a base de pintura zincromato epóxico con dos manos y esmalte
epóxico cuatro manos y además como último recubrimiento se deberán proteger con dos pasadas de pintura asfáltica,
la cual debe ser de unespesor mínimo de 3 mm. y que dicha aplicación será previamente preparada de acuerdo con
lasrecomendaciones del suministrador del asfato, luego dentro de la fosa será rellenada con arena limpia y libre de
sales, siendo la altura libre de nivel de piso terminado al borde superior del tanque de1.00 m. 2.4.2.
DESCARGA DE COMBUSTIBLE:Los gasoholes 84 Plus y 90 Plus así como el Diesel-B5, que se expenderán debido
al proyecto de una Estación de servicios, serán adquiridos en las Plantas de Ventas respectivas, desde donde
setransportará en un camión tanque y serán recepcionados según corresponda en los tanques dealmacenamiento del
futuro establecimiento.La recepción se realizará a través de un sistema de descarga que contará con una boca de
llenadoimplementada con su tapa hermética a donde se conectará la manguera de descarga desde el camión tanque,
de tal forma que se evite posibles fugas o derrame del combustible y se realizará de acuerdo al tipo de combustible y en
el caso de los gasoholes se deberá cumplir estrictamente con la conexión hacia el sistema de recuperación de vapores.
Así mismo previamente se deberá conectar el cable de tierra desde el camión tanque hacia el pozo de tierra del
establecimiento a fin de evitar la descarga estática.2.4.3.
MANTENIMIENTO: Se realizará el mantenimiento y limpieza de los tanques de manera periódica cada seis meses,
con l

l presente Estudio de Riesgos (E.R.) ha sido elaborado por:Nombre | CIP | Especialidad | Firma |José Félix
Valverde Llajaruna | 54435 | Ing. Químico | |
1.3.- OBJETIVOS DEL ESTUDIOEl presente Estudio de Riesgos se orienta a analizar e identificar los probables
escenarios deemergencia que pudieran presentarse así como determinar los posibles riesgos mayores
yconsecuencias que puedan presentarse por la operación de la Estación de Servicios, que sean por causas internas
o externas; asimismo determinar las medidas preventivas y elaborar el Plan deContingencias para hacer
frente a las emergencias que pudieran presentarse, durante laconstrucción, instalaciones o funcionamiento del futuro
establecimiento.
1.4.- DEFINICIONES A continuación se presenta algunas definiciones de interés para el presente
estudio que se han
tomado del “Glosario, Siglas y Abreviaturas del Sub
-sector Hidr 
ocarburos” publicado por el Ministerio
de Energía y Minas (D.S. Nº 032-2002-EM) y otras normas aplicables.Hidrocarburo: Todo compuesto orgánico,
gaseoso, líquido o sólido que consiste principalmente deCarbono e Hidrógeno.Riesgo: Condición de estar o enfrentar
una situación, actividad o escenario de peligro, el cual fungirácomo causante de consecuencias indeseables,
inesperadas o adversas.Estudio de Riesgos: Aquel Estudio que cubre los aspectos de seguridad en
instalacionesrelacionadas con las actividades de hidrocarburos y en su área de influencia, con el propósito
dedeterminar las condiciones existentes en el medio, así como prever los efectos y consecuencias de lainstalación y
operación del mismo, indicando los procedimientos, medidas y controles que deberánaplicarse con el objeto de eliminar
condiciones y actos inseguros que podrían suscitarse.El Estudio de Riesgos deberá analizar detalladamente todas las
variables técnicas y naturales, quepuedan afectar las instalaciones y su área de influencia, a fin de definir los métodos
de control queeviten o minimicen situaciones de inseguridad, incluyendo el dimensionamiento de los sistemas yequipos
contra incendios.Estación de Servicios: Establecimiento de Venta al público de Combustibles Líquidos
a través desurtidores y/o dispensadores exclusivamente; y que además ofrecen otros servicios en
instalacionesadecuadas, tales como:1. Lavado y engrase.2. Cambio de aceite y filtros.3. Venta de llantas,
lubricantes, aditivos, baterías, accesorios y demás artículos a fines.4. Cambio, reparación, alineamiento y balanceo de
llantas.5. Trabajos de mantenimiento automotor.6. Venta de artículos propios de un Minimercado.7. Venta de GLP para
uso doméstico en cilindros, cumpliendo con los requisitos establecidos en elpresente Reglamento y el Reglamento
específico; quedando prohibido el llenado de cilindros GLPpara su uso doméstico.8. Venta de GLP para uso de
automotor, sujetándose al Reglamento específico.9. Cualquier otra actividad comercial ligada a la prestación
de servicios al público en susinstalaciones, sin que interfiera con su normal funcionamiento, ni afecte la seguridad
delestablecimiento.
 
Grifo: Establecimiento de Venta al Público de Combustibles Líquidos, dedicado a la comercializaciónde combustibles a
través de surtidores y/o dispensadores, exclusivamente. Puede vender kerosenesujetándose a las demás
disposiciones legales sobre la materia. Asimismo podrá vender lubricantes,filtros, baterías, llantas y accesorios
para automotores.Consumidor Directo: Persona que adquiere en el país o importa combustible para su propio uso
yexclusivo en sus actividades y que cuenta con instalaciones para recepcionar y almacenar combustibles con
capacidad mínima de 1m3. Los consumidores directos se encuentran prohibidos decomercializar combustibles
con terceros.Plan de Contingencias: Documento que detalla las acciones a llevarse a cabo en caso deemergencias,
como resultado de derrames, fugas, incendios, desastres naturales, etc.2. DESCRIPCION DEL PROYECTO2.1.-
ALCANCE
El proyecto de la Estación de Servicios “NUESTRA SEÑORA DE FATIMA”, consiste en la instalación
de tres (3) tanques, siendo uno cada uno de ellos de un solo compartimiento y sus tuberíaspertinentes, los mismos que
contarán con las facilidades para la recepción, almacenamiento ydistribución de Diesel B5, Gasohol 84 Plus
y Gasohol 90 Plus. Así mismo se instalará el servicio delavado, cambio de aceite, venta de lubricantes y food
mart. Para las instalaciones y su construccióndel establecimiento se han contemplado las normas vigentes respectivas
sobre seguridad yprotección del medio ambiente.2.2.- UBICACIÓNEl Proyecto de una Estación de Servicios, de
propiedad de la empresa SERVICIOS GENERALESJAIR-10 E.I.R.L. se realizará en un área de terreno, el cual se
encuentra ubicado en el Predio ElChuncho, Sector El Rojas, Carretera a San José, C.P.M. San Martin de Porres,
distrito de San José,provincia de Pacasmayo, departamento y región La Libertad.2.3.- INSTALACIONESEl Estudio
de las instalaciones para el Proyecto de la Estación de Servicios, en el terreno depropiedad de la
empresa SERVICIOS GENERALES JAIR-10 E.I.R.L., la misma que es representadapor el señor DANY PAUL
CAJACHUAN SÁNCHEZ, se ha desarrollado teniendo en cuenta lassiguientes premisas:* Acceso para la
descarga de los combustibles.* Zona de descarga de combustible* Área de tanques de almacenamiento de
combustibles: Diesel B5, Gasohol 84 Plus y Gasohol 90Plus.* Zona de surtidores y patio de maniobras* Sistema de
tuberías de succión a surtidores* Sistema de lavado de vehículos y cambio de aceite* Sistema de seguridad contra
incendios2.4.- DESCRIPCIÓN DEL ESTABLECIMIENTOEl lugar donde se ubica el Proyecto de la Estación
de Servicios, es el Predio El Chuncho, Sector ElRojas, Carretera a San José, C.P.M. San Martin de Porres,
distrito de San José, provincia dePacasmayo, departamento y región La Libertad.El establecimiento ha sido diseñado
para operar en la actividad de venta al público de combustibleslíquidos y estará dotado de materiales y herramientas
necesarias para el control de fugas líquidas,asimismo contará con un área abierta, que es la zona de descarga y de
almacenaje, es decir posee
 
las disponibilidades de espacios amplios y adecuados que permite la seguridad integral y proteccióndel
medio circundante.El futuro establecimiento se encuentra dentro de un área de terreno adecuada destinada para
elexpendio de combustibles líquidos como el Diesel B5, Gasohol 84 Plus así como Gasohol 90 Plus. Además se
contará con los servicios de lavado de vehículos y cambio de aceite, venta de lubricantesy un food mart.
La distribución de dicho establecimiento, es de la manera siguiente:2.4.1. ZONA DE TANQUES DE
ALMACENAMIENTO:En el futuro establecimiento, se instalará tres (3) tanques de almacenamiento de combustible
líquido,siendo cada uno de ellos de un solo compartimiento, en donde se almacenará Diesel B5, Gasohol 84Plus y
Gasohol 90 Plus, para ser suministrado a través de dos surtidores a los vehículos que circulanpor zona, los mismos
que estarán debidamente instalado en la cada isla de despacho, con undispensador en cada una. Los tanques serán
fabricados respetando las exigencias técnicas del D.S.Nº 052-93-EM, D.S.Nº 054-93-EM y sus modificatorias,
cuyas especificaciones técnicas másprincipales serán las que se describen en el cuadro
siguiente:ESPECIFICACIONES TÉCNICAS | CARACTERÍSTICAS |* Forma * Posición * Plancha de acero1 tanque
de 1 compartimiento * Diámetro * Longitud *Capacidad de almacenamiento 1 tanque de 1 compartimientos * Diámetro
* Longitud * Capacidad dealmacenamiento 1 tanque de 1 compartimiento - Diámetro * Longitud * Capacidad de
almacenamiento * Tipo de Instalación | * Cilíndrica * Horizontal * 3/16” de espesorDimensiones * 1.94
m. * 2.60 m. * 2,030.00 galones Dimensiones * 1.54 m. * 4.17 m. * 2,052.00 galonesDimensiones *2.30 m. * 3.60 m. *
3,950.00 galones * Enterrados |Los tanques que se instalarán en el Proyecto de una Estación de Servicios, estarán
asentados sobreuna capa de arena fina compactada, la cual a su vez estará sobre una losa de concreto, dentro deuna
fosa construida de material noble (cimentación, columnas, pared de ladrillo, etc.), conservandouna distancia de 0.50 m.
entre el tanque y las paredes, a fin de permitir una adecuada compactacióndel material de relleno con arena fina. Los
tanques además tendrán una protección exterior a base depintura zincromato epóxico con dos manos y esmalte
epóxico cuatro manos y además como últimorecubrimiento se deberán proteger con dos pasadas de pintura asfáltica,
la cual debe ser de unespesor mínimo de 3 mm. y que dicha aplicación será previamente preparada de acuerdo con
lasrecomendaciones del suministrador del asfato, luego dentro de la fosa será rellenada con arenalimpia y libre de
sales, siendo la altura libre de nivel de piso terminado al borde superior del tanque de1.00 m.2.4.2.
DESCARGA DE COMBUSTIBLE:Los gasoholes 84 Plus y 90 Plus así como el Diesel-B5, que se expenderán debido
al proyecto deuna Estación de servicios, serán adquiridos en las Plantas de Ventas respectivas, desde donde
setransportará en un camión tanque y serán recepcionados según corresponda en los tanques dealmacenamiento del
futuro establecimiento.La recepción se realizará a través de un sistema de descarga que contará con una boca de
llenadoimplementada con su tapa hermética a donde se conectará la manguera de descarga desde elcamión tanque,
de tal forma que se evite posibles fugas o derrame del combustible y se realizará deacuerdo al tipo de combustible y en
el caso de los gasoholes se deberá cumplir estrictamente con laconexión hacia el sistema de recuperación de vapores.
Así mismo previamente se deberá conectar elcable de tierra desde el camión tanque hacia el pozo de tierra del
establecimiento a fin de evitar ladescarga estática.
2.4.3. MANTENIMIENTO:Se realizará el mantenimiento y limpieza de los tanques de manera periódica cada seis
meses, con la
Usted está leyendo una previsualización gratuita. 
Pages 5 to 44 are not shown in this preview.

Lea la versión completa

También podría gustarte