newton_diff(뉴턴분할차 보간법)
function inter=newton_diff(x, y, new_x)% x,y: 입력데이터% new_x: 보간이 적용되는 x값 n=length(x); b=zeros(n,n); b(:,1)=y(:); %분할차분표 작성for i=2:n for j=1:n-i+1 b(j,i)=(b(j+1,i-1)-b(j,i-1))/(x(i+j-1)-x(j)); endend b%뉴턴보간다항식 계산product=1;inter=b(1,1);for j=1:n-1 product=product*(new_x-x(j)); inter=inter+product*b(1,j+1);end
더보기
falseposition - 가(假)위치법
function root=falseposition(func, x1, x2, threshold)% x1, x2 : 초기경계값% threshold: 반복여부를 결정하는 임계값% root: 가위치법에 의해 최종적으로 구해진 근의 근사값 if feval(func, x1)*feval(func, x2) > 0 % feval(func,x)는 함수값을 계산하는 함수 disp('해는 이 구간에 없습니다.') returnend %rel_error=100.0; % 상대오차 초기값%x3=x1;j=0;fprintf('| iteration | x | error |\n')while(1) j=j+1;% xold=x3; x3=x2-feval(func, x2)*(x1-x2)/(feval(func, x1) - feval(func, x2)..
더보기
Gauss_Jordan 소거법
function x=gauss_jordan2(A)% A: 계수행렬% I: 단위행렬% x: inv(A)의 계산값 [m1,k1]=size(A);% [m2,k2]=size(b); x=zeros(m1,k2);I=eye(m1); % 상삼각 행력 형성for i=1:m1-1 m=-A(i+1:m1,i)/A(i,i); A(i+1:m1,:)=A(i+1:m1,:)+m*A(i,:); I(i+1:m1,:)=I(i+1:m1,:)+m*I(i,:);end%A%I % 하삼각 행렬 형성for i=1:m1-1 for j=i+1:k1 m=-A(i,j)/A(j,j); A(i,:)=A(i,:)+m*A(j,:); I(i,:)=I(i,:)+m*I(j,:); end %A %Iend%A%Ifor i=1:m1 x(i,:)=I(i,:)/A(i,i); A..
더보기
Gauss
Gauss33 , Gauss44, Gauss55를 아우르는 일반적인 가우스 일반해모든 크기의 행렬에 대해 사용 가능 function x=gauss(A,c)% A: 계수행렬% c: 상수행렬% x: 연립방정식의 해 [m1,k1]=size(A); % 상삼각행렬로 변환for i=1:m1-1m=-A(i+1:m1,i)/A(i,i);A(i+1:m1,:)=A(i+1:m1,:)+m*A(i,:);c(i+1:m1,1)=c(i+1:m1,1)+m*c(i,1);endx(m1,1)=c(m1,1)./A(m1,m1); % 후진대입법을 사용하여 근 x를 구함for i=m1-1:-1:1x(i,1)=((c(i,1))-A(i,i+1:m1)*x(i+1:m1,1))./A(i,i);end
더보기
Test Gauss55
function x=gauss55(A,b)m21=A(2,1)/A(1,1);m31=A(3,1)/A(1,1);m41=A(4,1)/A(1,1);m51=A(5,1)/A(1,1);A(2,:)=A(2,:)-m21*A(1,:);A(3,:)=A(3,:)-m31*A(1,:);A(4,:)=A(4,:)-m41*A(1,:);A(5,:)=A(5,:)-m51*A(1,:);b(2,1)=b(2,1)-m21*b(1,1);b(3,1)=b(3,1)-m31*b(1,1);b(4,1)=b(4,1)-m41*b(1,1);b(5,1)=b(5,1)-m51*b(1,1);m32=A(3,2)/A(2,2);m42=A(4,2)/A(2,2);m52=A(5,2)/A(2,2);A(3,:)=A(3,:)-m32*A(2,:);A(4,:)=A(4,:)-m42*A(2,:)..
더보기
Gauss44
A = 4X4 Matrixx = 4X1 Matrixb = 4X1 Matrix function x=gauss44(A,b)m1=A(2,1)/A(1,1);m2=A(3,1)/A(1,1);m3=A(4,1)/A(1,1);A(2,:)=A(2,:)-m1*A(1,:);A(3,:)=A(3,:)-m2*A(1,:);A(4,:)=A(4,:)-m3*A(1,:);b(2,1)=b(2,1)-m1*b(1,1);b(3,1)=b(3,1)-m2*b(1,1);b(4,1)=b(4,1)-m3*b(1,1);m4=A(3,2)/A(2,2);m5=A(4,2)/A(2,2);A(3,:)=A(3,:)-m4*A(2,:);A(4,:)=A(4,:)-m5*A(2,:);b(3,1)=b(3,1)-m4*b(2,1);b(4,1)=b(4,1)-m5*b(2,1);m6=A(4,..
더보기
Gauss33
A = 3X3 Matrixx = 3X1 Matrixb = 3X1 Matrix function x=gauss33(A,b)m21=A(2,1)/A(1,1);m31=A(3,1)/A(1,1);A(2,:)=A(2,:)-m21*A(1,:);A(3,:)=A(3,:)-m31*A(1,:);b(2,1)=b(2,1)-m21*b(1,1);b(3,1)=b(3,1)-m31*b(1,1);m23=A(3,2)/A(2,2);A(3,:)=A(3,:)-m23*A(2,:);b(3,1)=b(3,1)-m23*b(2,1);x(3,1)=b(3,1)/A(3,3);x(2,1)=(b(2,1)-A(2,3)*x(3,1))/A(2,2);x(1,1)=(b(1,1)-A(1,2)*x(2,1)-A(1,3)*x(3,1))/A(1,1);
더보기