ریاضیات پایه و اساس نرم افزار متلب است. در این آموزش چند نکته و برنامه نویسی پیشرفته ریاضی در نرم افزار متلب را یاد می گیرید.
۱-نمونه برداری تصادفی n نقطه
x = randn(3,n);
توی این پک فوق العاده، صفر تا صد متلب رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، سخت ترین پروژه هات رو در چند دقیقه با متلب انجام بده یا اصلا باهاش پول در بیار!
d = sqrt( x(1,:).ˆ۲+x(2,:).ˆ۲+x(2,:).ˆ۲ );
x(1,:) = x(1,:)./d; x(2,:) = x(2,:)./d; x(3,:) = x(3,:)./d;
۲- ساختن یک چند ضلعی به طول اضلاع x
theta = [0;cumsum(s)];
theta = theta/theta(end); theta = theta(1:(end-1));
x = exp(2i*pi*theta);
L = abs(x(1)-x(2));
x = x*s(1)/L; % rescale the result
حتما بخوانید: آموزش گام به گام پردازش سیگنال و تصویر در نرم افزار متلب
۳- محاسبه منحنی آباسیک
D = c(:,2:end)-c(:,1:(end-1));
s = zeros(size(c,2),1);
s(2:end) = sqrt( D(1,:).ˆ۲ + D(2,:).ˆ۲ );
s = cumsum(s);
۴- محاسبه ماتریس چرخش سه بعدی حول محور v
% taken from the OpenGL red book
v = v/norm(v,’fro’);
S = [0 -v(3) v(2); v(3) 0 -v(1); -v(2) v(1) 0];
M = v*transp(v) + cos(alpha)*(eye(3) – v*transp(v)) + sin(alpha)*S;
۵- محاسبه ماتریس واندر موند
n = length(x); % first method
[J,I] = meshgrid(0:d,1:n);
A = x(I).ˆJ;
% second method, less elegant but faster
A = ones(n);
for j = 2:n
A(:,j) = x.*A(:,j-1);
end
حتما بخوانید: آموزش گام به گام Array در متلب به زبان کاملا ساده
۶- محاسبه قدر مطلق
% first solution
x = (abs(x)>=T) .* x;
% second one : nearly 2 times slower
I = find(abs(x)<T); x(I) = 0;
- حفظ تعداد n ضریب همبستگی
[,I] = sort(abs(x(:))); x( I(1:end-n) ) = 0;
۷- ترسیم کره سه بعدی
p = 20; % precision
t = 0:1/(p-1):1;
[th,ph] = meshgrid( t*pi,t*2*pi );
x = cos(th);
y = sin(th).*cos(ph); z = sin(th).*sin(ph);
surf(x,y,z, z.*0);
% some pretty rendering options
shading interp; lighting gouraud;
camlight infinite; axis square; axis off;
حتما بخوانید: آموزش انواع داده ها در متلب به زبان کاملا ساده
۸- تصویر نقاط سه بعدی روی صفحه
for i=1:3 % substract mean
P(i,:) = P(i,:) – mean(P(i,:));
end
C = P*P’; % covariance matrix
% project on the two most important eigenvectors
[V,D] = eigs(C); Q = V(:,1:2)’*P;
یک مثال ویدیویی از محاسبات ریاضی متلب