python实现高斯(Gauss)迭代法的例子

我就废话不多说了,直接上代码大家一起看吧!

#Gauss迭代法 输入系数矩阵mx、值矩阵mr、迭代次数n(以list模拟矩阵 行优先)
def Gauss(mx,mr,n=100):
 if len(mx) == len(mr): #若mx和mr长度相等则开始迭代 否则方程无解
  x = [] #迭代初值 初始化为单行全0矩阵
  for i in range(len(mr)):
   x.append([0])
  count = 0 #迭代次数计数
  while count < n:
   for i in range(len(x)):
    nxi = mr[i][0]
    for j in range(len(mx[i])):
     if j!=i:
      nxi = nxi+(-mx[i][j])*x[j][0]
    nxi = nxi/mx[i][i]
    x[i][0] = nxi
   count = count + 1
  return x
 else:
  return False

#调用 Gauss(mx,mr,n=100) 示例

mx = [[8,-3,2],[4,11,-1],[6,3,12]]
mr = [[20],[33],[36]]
print(Gauss(mx,mr,20))

以上这篇python实现高斯(Gauss)迭代法的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python实现高斯函数的三维显示方法

    在网上查阅资料,发现很少用Python进行高斯函数的三维显示绘图的,原因可能是其图形显示太过怪异,没有MATLAB精细和直观. 回顾一下二维高斯公式: σ此处取3. 在MATLAB下的程序为: u=[-10:0.1:10]; v=[-10:0.1:10]; [U,V]=meshgrid(u,v); H=exp(-(U.^2+V.^2)./2/3^2); mesh(u,v,H); %绘制三维曲面的函数 title('高斯函数曲面'); 其显示结果为: 放大效果显示,很平滑和直观. 以下为Pytho

  • Gauss-Seidel迭代算法的Python实现详解

    import numpy as np import time 1.1 Gauss-Seidel迭代算法 def GaussSeidel_tensor_V2(A,b,Delta,m,n,M): start=time.perf_counter() find=0 X=np.ones(n) d=np.ones(n) m1=m-1 m2=2-m for i in range(M): print('X',X) x=np.copy(X) #迭代更新 for j in range(n): a=np.copy(A

  • python实现高斯(Gauss)迭代法的例子

    我就废话不多说了,直接上代码大家一起看吧! #Gauss迭代法 输入系数矩阵mx.值矩阵mr.迭代次数n(以list模拟矩阵 行优先) def Gauss(mx,mr,n=100): if len(mx) == len(mr): #若mx和mr长度相等则开始迭代 否则方程无解 x = [] #迭代初值 初始化为单行全0矩阵 for i in range(len(mr)): x.append([0]) count = 0 #迭代次数计数 while count < n: for i in rang

  • python实现高斯判别分析算法的例子

    高斯判别分析算法(Gaussian discriminat analysis) 高斯判别算法是一个典型的生成学习算法(关于生成学习算法可以参考我的另外一篇博客).在这个算法中,我们假设p(x|y)p(x|y)服从多元正态分布. 注:在判别学习算法中,我们假设p(y|x)p(y|x)服从一维正态分布,这个很好类比,因为在模型中输入数据XX通常是拥有很多维度的,所以对于XX的条件概率建模时要取多维正态分布. 多元正态分布 多元正态分布也叫多元高斯分布,这个分布的两个参数分别是平均向量μ∈Rnμ∈Rn

  • python正则表达式及使用正则表达式的例子

    正则表达式 正则表达用来匹配字符串 正则表达式匹配过程 依次拿出表达式和文本中的字符串进行比价 如果每个字符都能匹配,则匹配成功:一旦有匹配不成功的字符,则匹配失败 如果有量词和边界,则匹配过程稍微有些不同 正则表达式语法规则 语法 说明 表达式实例 匹配字符串 字符 . 匹配除换行"\n"外的任意字符串 abc abc \ 转义字符,使后一个字符改变原来的意思 a\\c a\c [...] 字符集,对应的位置可以是字符集中任意字符,字符集中的字符可以逐个列出,也可以给出范围,如[ab

  • python 执行终端/控制台命令的例子

    如下所示: import os os.system() os.popen().read().strip() #上面2种方法 是python 执行终端/控制台 命令的常见方法 #os.system('ping www.baidu.com') 执行成功 返回 0 #ping = os.popen('pint www.baidu.com').read().strip() 返回输出结果 #注:os.system() 执行完成 会关闭 所以当执行后续 命令需要依赖前面的命令时,请将多条命令写到一个 os.

  • python实现中文文本分句的例子

    对于英文文本分句比较简单,只要根据终结符"."划分就好,中文文本分句看似很简单,但是实现时会遇到很多麻烦,尤其是处理社交媒体数据时,会遇到文本格式不规范等问题. 下面代码针对一段一段的短文本组成了文档分句 import re def cut_sent(infile, outfile): cutLineFlag = ["?", "!", ".","-"] #本文使用的终结符,可以修改 sentenceList

  • Python 列表去重去除空字符的例子

    如下所示: # x = ['c b a',"e d f"] # y = [] # for i in x: # for ii in i: # # print(ii) # if ii == ' ': # pass # else: # y.append(ii) # print(y) # python 清除列表中的空字符 # list1 = ['122','2333','3444',' ','422',' ',' ','54',' '] # 第一种方法会导致最后一个' '没有被移除掉['122

  • python 读取修改pcap包的例子

    思路 利用scapy库,在这个库的基础下能够做很多的事情,python读取pcap包网上一找一大把 将读取出来的pcap包改一个名字,然后写回,这不就OK了吗 写回的函数是:scapy.wrpcap('filename',list) 第一个参数是filename,第二个参数是一个list,保存报文的list 样例代码 #coding=utf8 import scapy.all as scapy from scapy.layers import http import random #p就是一堆数

  • python requests指定出口ip的例子

    爬虫需要,一个机器多个口,一个口多个ip,为轮询这些ip demo #coding=utf-8 import requests,sys,socket from requests_toolbelt.adapters import source reload(sys) sys.setdefaultencoding('utf-8') s = requests.Session() new_source = source.SourceAddressAdapter('192.168.4.2') s.moun

  • 基于python二叉树的构造和打印例子

    写在最前面: 带你从最简单的二叉树构造开始,深入理解二叉树的数据结构,ps:不会数据结构的程序猿只能是三流的 首先,我们构造一个二叉树 这是最标准,也是最简单的二叉树构造方法 ''' 树的构建: 3 9 20 15 7 ''' class Tree(): '树的实现' def __init__(self,data,left = 0,right = 0): self.left = left self.right = right self.data = data def __str__(self):

随机推荐