۱۳۸۹ شهریور ۴, پنجشنبه

آموزش نرم افزار متلب (Matlab)

Matlab امروزه پرکاربردترین نرم‌افزار برای انجام محاسبات ریاضی است و یادگیری آن برای مهندسین امری اجتناب ناپذیر است. یکی از محاسن این نرم‌افزار یادگیری آسان آن است. به‌نظر من یکی از بهترین را‌ه‌ها برای یادگیری این نرم‌افزار، ابتدا یادگیری دستورات برای انجام محاسبات ریاضی و پس از آن به مرور زمان و بر حسب نیاز یادگیری سایر قابلیت‌های نرم‌افزار است که بهترین منبع برای یادگیری، help نرم‌افزار است. اما برای شروع کار باید از منابعی، دستورات اولیه برای انجام محاسبات ریاضی متداول را آموخت. در ادامه مهمترین و پرکاربردترین دستورات متلب و نحوه استفاده از آن آمده‌است که برای شروع کار کفایت می‌کند. من خودم از همین دستورات و به همین نحو برای آموزش Matlab به دانشجویان دانشگاه صنعتی اصفهان استفاده کردم. برای یادگیری Matlab، کافیست دستورات را اجرا کرده و نتایج را مشاهده کنید و در نتیجه با بررسی نتایج نحوه استفاده از دستورات را خواهید آموخت. برای کسب اطلاعات بیشتر نیز می‌توان از Help نرم‌افزار استفاده کرد. به این ترتیب که در خط فرمان می‌توان دستورات زیر را تایپ کرد.

Help نام دستور
Doc نام دستور

اغلب برای استفاده از Help نرم‌افزار بررسی مثال‌های موجود در آن کافیست و تسلط چندانی به زبان انگلیسی نیاز نیست. به نظر بنده یادگیری نرم‌افزارها امر ساده‌ایست. فقط نباید به آن به صورت یک کار پیچیده نگاه کرد و اگر به آن به صورت یک کار ساده نگاه شود به آسانی می‌توان یک نرم‌افزار را در حد اولیه آموخت و به مرور زمان به آن تسلط یافت.

%% ============ Variables
a = 3.87
b = 5+6i
c = 'Dynamic Coarse'

%%============Linear Algebra
help matfun

A=[1 12 13 14; 21 2 23 24; 31 32 3 34; 41 42 43 4]
B1=[2;3;4]
a32=A(3,2)

B=A(1,1:3)

C=A(:,4)

D=A*A %or A^2

E=A.*A %The .* operator produces element-by-element product

Identity_Matrix = eye(4)

zero_Matrix = zeros(2,5)

one_Matrix = ones(3,4)

Diagonal_Matrix = diag([3,4,5,6])

Diagonal_A = diag(A)

Inverse_A = inv(A)

Determinant_A = det(A)

Transpose_A = transpose(A) % or A' or A.'

Trace_A = trace(A)

Cross_product = cross(B,B1)

Dot_product = dot(B,B1)

X = A\C %AX = C

%% ============Polynomials
help polyfun

f=[5 4 0 2 1 6] %P=(5*x^5)+(4*x^4)+(2*x^2)+x+ 6
g=[3 4 5]

Evaluate_polynomial = polyval(f,5)

polynomial_roots = roots(f)

Convert_roots_to_polynomial = poly(polynomial_roots)

Multiply_polynomials = conv(f,g)

[q,r]= deconv(f,g)

%%============Calculus
syms x t h
f = exp(x)*cos(x)*sin(t)

% ******* Differentiation
derivative = diff(f,x)

second_derivative = diff(f,t,2)

% ******* Limit
Limit = limit( f,x,3 )

vpa(Limit)

vpa(Limit,7)

Left_Limit = limit(f,x,0,'left')

% ******* Integration
Indefinite_Integral = int(f,x)

Definite_Integral = int(f,x,0,pi/2)

Double_Integral = int(int(f,x,0,pi/2),t,0,pi)

% ******* Taylor Series
Taylor = taylor(f,8,12)

pretty(Taylor)

% ******* Laplace Transformation
Laplace = laplace(f,t,h)

Inverse_Laplace = ilaplace(Laplace, h,t)

% ******* Expansion and Factorization
Expand = expand(cos(x+t+h))

Factor = factor(60*x^4+212*x^3+253*x^2+117*x+18)

% ******* Substitution and Evaluation
Substitute = subs(f,t,pi/4)

x=pi;
Evaluate = eval(f)

%% ==============Solving Algebraic and Defferetial Equations
% ******* Single Algebraic Equation
syms a b c x y alpha
S = a*x^2 + b*x + c;
Solution1 = solve(S) % or Solutions = solve('a*x^2 + b*x = -c')

Solution2 = solve(S,b)

% ******* Several Algebraic Equations
[x,y] = solve(x^2*y^2, x-y/2-alpha)

% ******* Single Differential Equation
Solution3 = dsolve('D2y=cos(2*x)-y','x')

Solution4 = dsolve('D2y=cos(2*x)-y','y(0)=1','Dy(0)=0','x')

% ******* Several Differential Equations
[F,G] = dsolve('Df=3*f+4*g', 'Dg=-4*f+3*g')

[F1,G1] = dsolve('Df=3*f+4*g', 'Dg=-4*f+3*g','f(0)=0','g(0)=1')

%%============Programming
% ******* if
k=5
if k >= 6
d=k
elseif k < d="k^2" d="k^3" i="1:5" p="2;" p="p*2;" x1="0:0.2:6*pi" y1="sin(x1);" y2="cos(x1);" 1="x^2',[-2,2,-3,3])">

هیچ نظری موجود نیست: