加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Fortran高斯消元法求解方程组

(2016-08-20 01:21:42)
标签:

fortran

高斯消元法

线性方程组

分类: Fortran应用
module guass
    contains
subroutine solve_guass(A,b,x,N)
implicit none
integer::N,i,j,k
real::A(N,N),b(N),x(N)
real::temp

do k=1,N-1,1
    do i=k+1,N,1
        temp=A(i,k)/A(k,k)
        do j=k,N,1
            A(i,j)=A(i,j)-temp*A(k,i)
            b(i)=b(i)-temp*b(k)
        end do
    end do
end do

call solve_uptri(A,b,x,N)
end subroutine

subroutine solve_uptri(A,b,x,N)
implicit none
integer::N
real::A(N,N),x(N),b(N)
integer::j,k
real::temp

x(N)=b(N)/A(N,N)

do k=N-1,1,-1
    temp=0
    do j=k+1,N,1
        temp=temp+A(k,j)*x(j)
    end do
    x(k)=(b(k)-temp)/A(k,k)
end do
end subroutine

end module

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有