文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何使用Python生成Hilbert矩阵

2024-04-02 19:55

关注

1.什么是Hilbert矩阵矩阵

下面分别列举了1*1;2*2;3*3大小的矩阵;

 通过观察,我们发现其规律性极强,那第三列举个例子:

2.找规律

1.第一种思路:先从值出发(找规律)

我们会发现沿着主对角线从上往下是递增的,但是元素的个数是先增加后减少的,这样就不好处理,这种思路无法解出题目。

2.第二种思路:先从下标索引出发(找规律)

我们发现,,分子是不变的,然后索引相加然后再加1,作为分母,这样就能够计算出索引对应的值。

3.代码展示

import numpy as np#导入numpy计算模块
def CreateHT(n):#创建Hilbert矩阵
    a=np.zeros((n,n))#定义一个空的矩阵
    for i in range(n):#遍历的行数
       for j in range(n):#遍历的列数
           a[i][j]=1/(i+j+1)#通过观察简单的来发现规律进而写出公式
    return a
for i in range (5):#一共创建5个来看看
    print(CreateHT(i))
    print("\n")

4.输出展示

5.初始化解为1,1,

等构建解的增广矩阵(代码展示)

(1)以生3*4的增广矩阵为例

import numpy as np  # 导入numpy计算模块
 
def CreateHT(n):  # 创建Hilbert矩阵
    a = np.zeros((n, n+1))  # 定义一个空的矩阵
    jie=[len(a)]
    for i in range(n):  # 遍历的行数
        x=0#初始化解为1,1,1等,用x将每一行的数据接起来然后在下面赋值给每一行的最后一个元素
        for j in range(n):  # 遍历的列数
            a[i][j] = 1 / (i + j + 1)  # 通过观察简单的来发现规律进而写出公式
            x+=a[i][j]
        a[i][n]=x

    return a
print(CreateHT(3))

(2)输出结果

到此这篇关于如何使用Python生成Hilbert矩阵的文章就介绍到这了,更多相关Python生成Hilbert内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯