Filter löschen
Filter löschen

Calculating of multivariate symbolic expression with numeric data

1 Ansicht (letzte 30 Tage)
HI
I need to calculate integral over a Multivariate function,
the function is a product of some 3x3 "analytic" matrices which can be easily calculated using symbolic math,
Here is a simple function which I need to calculate :
syms t p
R=[ cos(p) sin(p) 0
-sin(p) cos(p) 0
0 0 1];
L1=[ cos(t) 0 sin(t)
0 1 0
-sin(t) 0 cos(t) ];
e0=[1;1;1]
F=inv(R)*inv(L1)*R*e0
the result :
F =
sin(p)^2 - cos(p)*sin(t) - cos(p)*sin(p) + cos(p)^2*cos(t) + cos(p)*cos(t)*sin(p)
cos(p)^2 - sin(p)*sin(t) - cos(p)*sin(p) + cos(t)*sin(p)^2 + cos(p)*cos(t)*sin(p)
cos(t) + cos(p)*sin(t) + sin(p)*sin(t)
After having the function what is the best way to calculate it over a set of numerical data for p,t (phi,theta) ??
10x

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 16 Mär. 2012
Fnum = matlabFunction(F, p, t);
This would create a MATLAB function that had p as its first argument and t as its second argument and which returned an array of numeric values.
  4 Kommentare
Alexander
Alexander am 16 Mär. 2012
Try:
Fnum = matlabFunction(R, 'vars', [p, t]);
Elad
Elad am 16 Mär. 2012
Thank u both, The last line gives the solution.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by