Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Matematica Simbolica Con Matlab
Matematica Simbolica Con Matlab
f1 = '1/(2*x^2n)'
f2 = '1/sqrt(2*x)'
f3 = 'cos(x^2) - sen(2*x)'
M = sym('[a, b; c, d]')
f = int('x^3/sqrt(1-x)', 'a', 'b')
diff('cos(x)')
ans = -sin(x)
M = sym('[a, b; c, d]')
determ(M)
M =
[ a, b]
[ c, d]
ans =
a*d-b*c
f = symop('(3*4-2)/5+1')
numeric(f)
Variables simbólicas.
symvar('a*x+y')
symvar('a*t+s/(u+3)')
symvar('sin(omega)')
symvar('3*i+4*j')
symvar('y+3*s', 't')
diff('x^n')
diff('x^n', 'x')
diff('x^n', 'n')
ans = x^n*n/x
ans = x^n*n/x
ans = x^n*log(x)
clear;
a = sym('a');
b = sym('b');
x = sym('x');
f = a*x^2/(b-x)
[n m] = numden(f)
clear;
x = sym('x');
f = 3/2*x^2+2/3*x-3/5
[n m] = numden(f)
clear;
x = sym('x');
f = 2*x^2+3*x-5
g = x^2-x+7
display('suma'); f+g
display('resta');f-g
display('multiplicacion');f*g
display('division'); f/g
suma
3*x^2+2*x+2
resta
x^2+4*x-12
multiplicacion
(2*x^2+3*x-5)*(x^2-x+7)
division
(2*x^2+3*x-5)/(x^2-x+7)
Sustitución de variables.
Para remplazar el valor de una variable por otra variable o número utilizamos el
comando subs()
a = sym('a');
b = sym('b');
c = sym('c');
x = sym('x');
f = a*x^2+b*x+ c
Ejemplo 1.
clear ;
p= 2.5;
x = sym('x');
fx = x- cos(x);
h = fx/diff(fx);
while abs(numeric(subs(fx, num2str (p), 'x'))) > 0.001
p = p - numeric(subs(h, num2str (p), 'x'))
end;
z = p;
Ejemplo 2.
x 2+4 y 2-4 = 0
3
0
y
-1
-2
-3
-3 -2 -1 0 1 2 3
x
x = sym('x');
y = sym('y');
f = [x^2-2*x-y+0.5; x^2+4*y^2-4]
ezplot(f(1),[-3,3]);
hold on;
ezplot(f(2),[-3,3]);
grid on;
for k=1:100
k
Ji = subs(subs(J, x, num2str(p(1))), y, num2str(p(2)))
fi = subs(subs(f, x, num2str(p(1))), y, num2str(p(2)))
p = p - numeric(inv(Ji)*fi)
pause
end;
Integración.
Por ejemplo
int('log(x)/exp(x^2)')
Regresa.
ans =
int(log(x)/exp(x^2),x)
x = sym('x');
s = sym('s');
f = sin(s + 2*x)
int(f)
int(f,s)
Regresara.
f =
sin(s+2*x)
ans =
-1/2*cos(s+2*x)
ans =
-cos(s+2*x)
Ejemplo 3.
clear;
g = sym('g')
t = sym('t')
t_fin = solve(y)
g = -32
v = -32*t
v = -32*t+64
y = -16*t^2+64*t
y = -16*t^2+64*t+96
t_max = 2
La altura máxima es
y_max = 160
t_fin = [ 2+10^(1/2)]
Para tener una idea más clara de lo que le paso al tomate, vamos a dibujar el
resultado del lanzamiento del tomate. Para ello utilizamos el comando ezplot(y)
200
-200
-400
-600
-800
-1000
-6 -4 -2 0 2 4 6
t
Simplificación de expresiones.
Las expresiones simbólicas pueden ser presentadas de muchas formas
equivalentes. En situaciones diferentes algunas formas pueden ser preferibles
a otras. MATLAB usa un número de comandos para simplificar la forma de las
expresiones simbólicas.
» f = sym('(x^2-1)*(x-2)*(x-3)')
f =
(x^2-1)*(x-2)*(x-3)
» collect(f)
ans =
x^4-5*x^3+5*x^2+5*x-6
» horner(ans)
ans =
-6+(5+(5+(-5+x)*x)*x)*x
» factor(ans)
ans =
(x-1)*(x-2)*(x-3)*(x+1)
» expand(f)
ans =
x^4-5*x^3+5*x^2+5*x-6
x = sym('x')
y = sym('y')
f = log(2*x/y)
simplify(f)
f =
log(2*x/y)
ans =
log(2)+log(x/y)
Otro ejemplo es
x = sym('x')
g = sin(x)^2+3*x+cos(x)^2-5
simplify(g)
g =
sin(x)^2+3*x+cos(x)^2-5
ans =
-4+3*x
Otro es
x = sym('x')
h = (1/x^3+6/x^2+12/x+8)^(1/3)
simplify(h)
solve('a*x^2+b*x+c')
solve('x=cos(x)')
solve('exp(x)=tan(x)')
ans =
[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))]
[ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]
ans =
.73908513321516064165531208767387
ans =
1.3063269404230792361743566584407
dy
1 y2
dx
se soluciona haciendo
dsolve('Dy=1+y^2')
ans =
tan(t+C1)
d2y
cos( 2 x) y
dx 2
dy (0)
0
dx
y (0) 1