我想为一个输入d(一个素数)生成所有的平方置换矩阵。我知道在一般情况下,对于所有的排列都有这样的例子,但是我在寻找满足数学定义的置换矩阵

置换矩阵是根据数字1到d的某种排列将dxd恒等式矩阵的行进行排列而得到的矩阵。因此,每一行和每列都精确地包含一个在其他地方都有0的1。在

例如,对于2x2,[[1,0],[0,1]]和[[0,1],[1,0]]满足此要求,而[[1,1],[0,0]]等。。。不要,所以我希望这不是一个重复的问题。我有一个代码可以做到这一点,我的测试是我应该有d!矩阵。当我到了11岁,我应该得到11岁!矩阵,但我得到一个错误,我的代码由于内存丢失而关闭。我希望有人有一个更有效的方法来解决这个问题,因为我想用更大的素数import math

import numpy as np

import cmath

from sympy.utilities.iterables import multiset_permutations

from itertools import permutations, chain

from pprint import pprint

from numpy import ndarray

from numpy import linalg as LA

d=5

print("Prime dimension",d)

a=[1]+[0 for _ in range(d-1)]

N=[]

P=[]

Pdagger=[]

for p in multiset_permutations(a):

N.append(p)

#Generate a list of ALL the permutation matrices including Identity (last)

for n in multiset_permutations(N):

n

P.append(n)

print(len(P))

如果有帮助的话,我正在ipythonjupyter笔记本上运行我的代码。我知道这可能不是最好/最有效的运行方式,但我正在寻找任何人可以给我的建议。顶部导入的所有库都与后面的代码相关。在

python输入二维数组_用Python生成二维数组的置换矩阵相关推荐

  1. python输入生日判断星座_用python条件语句判断星座

    每当发生显著的重大天象时,天文学家.科普工作者和媒体总会在社会上,特别是年轻人之间掀起一股天文学热潮.为了方便研究及观测天上诸多恒星,人们把星空分为若干个区域,每一区就是一个星座.对于夜空爱好者来说, ...

  2. python输入生日输出生肖_用Python输入年月日 输出X年X月X日生肖是XX,xx岁的XX星座...

    # -*- coding: utf-8 -*- import datetime time1 = datetime.datetime.now().strftime('%Y') time2 = datet ...

  3. python输入汉字的代码_基于python的汉字转GBK码实现代码

    如图,"广"的编码为%B9%E3,暂且把%B9称为节编码,%E3为字符编码(第二编码). 思路: 从GBK编码页面收集汉字 http://ff.163.com/newflyff/g ...

  4. python输入字符串转换为公式_将python字符串转化成长表达式的函数eval实例

    爬一个网页时,要保存的数据都没有encode,就导致保存下来的中文都变成unicode了... 那么,怎么把一个表示字符串的unicode还原成unicode呢? 函数eval(expression) ...

  5. python输入esc退出循环_使python在按ESC键时立即退出程序

    在正常输入下没有办法做到这一点.raw_input一次读取整行.在 在某些(极少数)情况下,您可以这样做:message = '' while True: ch = sys.stdin.read(1) ...

  6. python输入日期计算天数_用python计算日期(1、返回指定日期所在的一周,2,计算一个日期的月份和天数加减)...

    放两个小轮子吧,欢迎测试bug,然后告诉我: 1.返回指定日期所在的一周 2,计算一个日期的月份和天数加减 # -*- coding: utf-8 -*- """ Cre ...

  7. python输入坐标求面积_利用python中的坐标计算多边形面积

    您没有正确实现Shoelace formula.我修改了一点你的代码来修复它:sum1=0.0 sum2=0.0 b=input("Number of corners: ") ma ...

  8. python输入文字垂直输出_在python中如何将横向输入的中文竖直输出

    s.strip('.').split(',') 去掉最后的句号,然后以逗号为分隔符,把句子分开,存到一个list当中.执行完成后, lines=['白日依山尽', '黄河入海流', '欲穷千里目', ...

  9. python输入转化为数字_用Python罗马数字转换为阿拉伯数字的方法

    def getRomanNum(RomanStr): # 玩蛇网 www.iplaypy.com """Roman numerals will be converted ...

  10. python api文档生成二维码_使用Python第三方库生成二维码

    本文主要介绍两个可用于生成二维码的Python第三方库:MyQR和qrcode. MyQR的使用: 安装: pip install MyQR 导入: from MyQR import myqr imp ...

最新文章

  1. 微信跳一跳高分辅助踩坑
  2. iOS 代理反向传值
  3. php在线备忘录,一个会话备忘录小程序的实现方法
  4. UML作业第一次:UML用例图绘制
  5. Intel Realsense D435 python(Python Wrapper)example02: NumPy and OpenCV 用窗口展示并排堆叠的RGB流和深度流
  6. TC SRM 593 DIV2 1000
  7. 注册docker hub账号
  8. Java日志性能那些事(转)
  9. m1笔记本android开发,Apple M1设备开发Android小tips
  10. linux搜索命令有哪些,linux五大搜索命令学习
  11. 计算机算法设计与分析第三章答案,《计算机算法设计与分析》第三章动态规划法.ppt...
  12. STC学习:红外通信1(收发单个字节)
  13. 超级搜索术-思维导图
  14. Java setlocale方法_Java MessageFormat setLocale()用法及代码示例
  15. Xcode Message from debugger: Terminated due to memory issue
  16. 计算机NIC配置,在主计算机或 VM 上创建新的 NIC 团队
  17. 西直门立交桥的破事儿
  18. 课后自主练习(递归)1059. Fj haozi medium《编程思维与实践》个人学习笔记
  19. 数字认证机构(CA)业务流程
  20. S曲线加减速算法 VS 梯形加减速算法

热门文章

  1. 欢迎加入Java私活外包QQ群
  2. 计算机毕业设计ssm民族地区文化调研与数字化保护技术研究---青海平弦乐库的建设及播放平台开发l3479系统+程
  3. 计算机网络--交换机自学习及转发帧
  4. Nginx快速入门笔记
  5. torch.topk() 函数详解
  6. 几何向量:ScreenToViewportPoint/ScreenToWorldPoint函数解析
  7. python像数常用函数_ubuntukylin基础 python3 安装IDLE
  8. 香港十佳黄金交易平台2019最新排名
  9. 爬虫与反爬虫系统的设计思路与策略
  10. 黑盒测试方法—因果图法