标签: sage

从命令行(终端)启动Pycharm

我想尝试PyCharm进行鼠尾草数学开发.通常我运行eclipse来进行sage开发,但现在我想用PyCharm尝试它.

要使用sage环境变量启动eclipse,在命令行中我通常会执行以下操作:

sage -sh
cd /path/to/eclipse
./eclipse
Run Code Online (Sandbox Code Playgroud)

第一行加载sage环境变量,其余部分启动eclipse.我怎么能为pyCharm做同样的事情?(注意我使用Mac和Ubuntu进行sage开发;上面的命令对两个操作系统都是不可知的)

  1. 链接1接近我正在寻找的解决方案,但我无法在任何地方找到pyCharm.sh.
  2. 链接2:Jetbrains也没有给出明确的指示.

python command-line environment-variables sage pycharm

42
推荐指数
7
解决办法
8万
查看次数

SciPy创建2D多边形蒙版

我需要使用标准的Python包创建一个numpy 2D数组,它表示多边形的二进制掩码.

  • 输入:多边形顶点,图像尺寸
  • 输出:多边形的二进制掩码(numpy 2D数组)

(更大的上下文:我想使用scipy.ndimage.morphology.distance_transform_edt获取此多边形的距离变换.)

谁能告诉我怎么做?

python polygon scipy sage point-in-polygon

37
推荐指数
4
解决办法
3万
查看次数

30
推荐指数
1
解决办法
1万
查看次数

iPython:类似Manipulate的命令

在Wolfram Mathematica中,我可以使用该Manipulate[]命令以交互方式修改参数的值.

例如,Manipulate[n, {n, 1, 20}] 显示一个滑块,通过该滑块可以改变其值n.

在IPython笔记本中是否有任何简单的方法(例如魔法或装饰器,如SAGE)来实现相同的结果?

python wolfram-mathematica ipython sage ipython-notebook

18
推荐指数
2
解决办法
4763
查看次数

如何在Jupyter中安装sagemath内核

我可以在Jupyter中使用Python Kernel.我正在寻找一种在Jupyter中使用sagemath的方法.我无法看到安装它的方法.怎么做?

sage jupyter jupyter-notebook

18
推荐指数
3
解决办法
9941
查看次数

17
推荐指数
1
解决办法
1752
查看次数

RDSA实施圣人

首先,我必须说我使用Sage数学的知识非常有限,但我真的想改进一个能够解决我遇到的这些问题.我被要求实施以下内容:

1 - 阅读FIPS 186-4(http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf)ECDSA的定义,并使用Sage数学实现:

  (a) prime eliptic curves (P-xxx)

  (b) binary eliptic curves (B-xxx)
Run Code Online (Sandbox Code Playgroud)

我尝试通过浏览互联网来解决(a)并最终得到以下代码:

练习1,a)

class ECDSA_a:

def __init__(self):
    #Parameters for Curve p-256 as stated on FIPS 186-4 D1.2.3
    p256 = 115792089210356248762697446949407573530086143415290314195533631308867097853951
    a256 = p256 - 3
    b256 = ZZ("5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b", 16)
    ## base point values
    gx = ZZ("6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296", 16)
    gy = ZZ("4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5", 16)

    self.F = GF(p256)
    self.C = EllipticCurve ([self.F(a256), self.F(b256)])
    self.G = self.C(self.F(gx), self.F(gy))

    self.N = FiniteField (self.C.order()) # how many points are …
Run Code Online (Sandbox Code Playgroud)

python cryptography elliptic-curve sage ecdsa

16
推荐指数
1
解决办法
263
查看次数

如何以简单/有效的方式执行PHP矩阵操作

我正在寻找一种方法,以简单/有效的方式在PHP中执行Matrix操作.

我希望能够进行基本的矩阵运算,如反转,乘法,行列式,加,减,求解线性方程Ax = B,转置等.

我正在寻找小尺寸的矩阵(我想要反转的矩阵最多为100x100,而我想要乘法/转置的矢量可能是1000x1).

我找到了一个PEAR包Math_Matrix,但它似乎被忽略了(我使用E_STRICT开发并抛出了许多已弃用的警告).我发现的其他链接似乎大部分已破坏且未更新.

我发现了Lapack PHP包,但它没有其他操作,如乘法或减法或转置.

我知道另一种选择是使用与Octave或Sage等其他软件的集成,但是我们还不确定我们是否想要这样做(财务团队鄙视Python语法,IT团队担心Octave开销).

是否有任何独立的库,任何人都使用这种矩阵操作具有所有基本操作并且它已更新?

php matrix octave sage

10
推荐指数
1
解决办法
627
查看次数

Python/sage:可以从索引1开始列表吗?

我从一个据称严肃的来源下载了一个sage脚本.它在我的计算机上不起作用,并且快速调试显示问题来自这样的事实:在某些时候,作者正在做的事情就好像n元素列表从1到n编号(而"正常"编号)在Python中(因此)sage是0..n-1).

我错过了什么?是否有一个隐藏在某处的全局变量会改变这种约定,就像在APL中一样?

感谢您的帮助(尽管我对英语和CSish都很有把握,但我希望我的问题很明确......)

python list sage

9
推荐指数
2
解决办法
4万
查看次数

为什么创建一个从0到log(len(list),2)的范围这么慢?

我不知道为什么会发生这种情况.我在搞乱一些列表,我需要一个for从0到log(n, 2)n 的循环,其中n是列表的长度.但是代码速度非常慢,所以经过一番研究后我发现问题出现在范围生成中.演示示例代码:

n = len([1,2,3,4,5,6,7,8])
k = 8
timeit('range(log(n, 2))', number=2, repeat=3) # Test 1
timeit('range(log(k, 2))', number=2, repeat=3) # Test 2
Run Code Online (Sandbox Code Playgroud)

输出

2 loops, best of 3: 2.2 s per loop
2 loops, best of 3: 3.46 µs per loop
Run Code Online (Sandbox Code Playgroud)

测试的数量很少(我不希望它运行超过10分钟),但它已经显示range(log(n, 2))比仅使用整数的对数的对应物慢几个数量级.这真的很令人惊讶,我不知道为什么会发生这种情况.也许是我的电脑上的问题,可能是Sage问题或Python错误(我没有在Python上尝试相同).

使用xrangerange不是帮助.此外,如果你得到数字.n(),测试1以2的相同速度运行.

有人知道会发生什么吗?谢谢!

python performance sage

9
推荐指数
1
解决办法
905
查看次数