范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

带你用SmartNoteBook探索SageMath

  Drawn by  smartnotebook.tech  Using SageMath
  关于SageMath
  S ageMath 是一个免费的、开源的数学软件系统,采用GPL协议。它整合了许多开源Python包,采用Python语言编写,但也支持其他语言。它的目标是创造一个可变的开源软件以替代Matlab、Magma、Maple 和 Mathematica。
  为使大家方便的了解、学习并使用SageMath,我们的SmartNotebook(简称:SNB)通过引入SageMath引擎并细致地对兼容性做了优化和完善,充分利用Notebook的特性,不仅减少大量复杂的安装和配置,而且做到可以让用户即开即用。
  话不多说,接下来我们就利用SmartNotebook 结合SDSU Sage Tutorial 提供的例子来快速了解SageMath的一些语法、函数等特性。
  利用 SNB 探索SageMath
  首先,我们用SmartNotebook 快速创建一个Sagemath内核的Notebook。像下面这样,输入Notebook的标题,选择Sagemath的内核,点击提交即可。
  接下来我们进入Notebook后直接创建Code Cell 单元格,便可以编写并执行Sage代码了。
  例如:我们对整数 20221208 进行素数因子分解 ,新建一个Code Cell 单元格 ,输入下面代码并点击执行:factor(20221208)
  2^3 * 7 * 361093
  SageMath的帮助系统
  Help帮助:使用 "?"
  当我们需要准确了解某个函数或命令的作用以及如何使用它,我们可以使用 "?"来调用内置的帮助系统。例如:lcm?
  查看源代码:使用"??"
  有些喜欢研究源码的同学想看看 SageMath 中某个命令的源码,您只需键入您感兴趣的命令,然后键入"??"。
  例如,查看factor()的源代码(截图节取了部分源码):factor??
  SageMath as a Calculator
  这里我们介绍一下如何像图形计算器一样使用 SageMath 的一些算术和函数命令。
  基本算术
  基础的算术运算符为加 + 、减 -、乘 * 、除 / 、指数 ^
  数字前面的符号-表示它是负数。print("1+1=",1+1) print("103-101=",103-101) print("7*9=",7*9) print("7337/11=",7337/11) print("11/4=",11/4) print("2^5=",2^5) print("-11+9=",-11+9) -6
  输出:
  1+1= 2
  103-101= 2
  7*9= 63
  7337/11= 667
  11/4= 11/4
  2^5= 32
  -11+9= -2
  -6
  SageMath 遵守标准的操作顺序, 即PEMDAS (parenthesis, exponents, multiplication, pision, addition, subtraction): 括号、指数、乘法、除法、加法、 减法。print(2*4^2+1) print((2*4)^2+1) print(2*4^(2+1)) print(-3^2) print((-3)^2)
  输出:
  33
  65
  128
  -9   9
  当两个整数相除时,有一个微妙之处:SageMath将返回分数或其十进制近似值。与大多数图形计算器不同,SageMath将尝试尽可能精确,除非另有说明,否则将返回分数。print(11/4) print(11/4.0) print(11/4.) print(11.0/4) print(11/4*1.)   输出:   11/4   2.75000000000000   2.75000000000000   2.75000000000000   2.75000000000000   整数除法和因式分解   有时当我们使用除法时,除法运算符不会给我们所有想要的信息。比如,我们不仅想知道约化分数是多少,甚至想知道它的十进制近似值,或者想知道唯一商和余数是多少。我们可以使用运算符// 来计算商,使用运算符 % 用于余数。使用 pmod()函数来同时计算获得商和余数。print( 14 // 4) print( 14 % 4) print( pmod(14,4))   输出:   3
  2
  (3, 2)   我们知道当两个整数是否能整除,可以采用A/B余数是0,说明可以整除,但SageMath 整数有一个内置的方法可以专门用来检查一个整数是否整除另一个整数。print(3.pides(15)) print(5.pides(17))   输出:   True   False   与pides方法相关的还有一个方法pisors(),此方法可以返回指定整数的所有正除数的列表。print(12.pisors()) 101.pisors()   输出:   [1, 2, 3, 4, 6, 12]   [1, 101]   我们知道当整数的除数只是1和它本身时,这个数字是素数。为了检查一个数字在SageMath中是否是素数,我们可使用方法is_prime()print(153.is_prime()) (2^19-1).is_prime()   输出:   False   True   factor()可计算整数的素因数分解print(62.factor()) 63.factor()   输出:   2 * 31   3^2 * 7   有兴趣简单地知道哪些素数除以整数,我们可以使用prime_pisors() 或 prime_factors()方法。print(24.prime_pisors()) print(24.prime_factors()) print(63.prime_factors()) print(63.prime_pisors())   输出:   [2, 3]   [2, 3]   [3, 7]   [3, 7]   求最大公约数和最小公倍数。   最大公约数(GCD)是所有这些公约数中最大的一个。   最小公倍数(LCM)是两个整数相除的最小整数。print( gcd(14,63)) print( gcd(15,19)) print(lcm(4,5)) lcm(14,21)   输出:   7
  1
  20
  42
  标准函数和常量   SageMath几乎包含了人们在学习数学时遇到的所有标准函数。接下来我们将介绍一些最常用的函数:maximum、minimum、 floor、ceiling、trigonometric、exponential、logarithm 函数。我们还将看到许多标准的数学常数,如欧拉常数(e)、π 和黄金比例( ϕ )。# max 最大值 print(max(1,5,8)) # min 最小值 print(min(1/2,1/3)) # abs 绝对值 print(abs(-10)) # floor 向下取整  print(floor(2.1)) # ceil 向上取整 print(ceil(2.1))   输出:   8
  1/3   10
  2
  3
  当使用floor、ceil 时要特别小心,注意计算精度问题 print(floor(1/(2.1-2))) print(1/(2.1-2))   输出:   9
  9.99999999999999   计算机以二进制形式存储实数,而我们习惯于使用十进制表示。十进制表示法非常简单和简短,但是当转换为二进制时,它是:   由于计算机不能存储无限数量的数字,因此这会在某处四舍五入,从而导致我们看到的精度错误。   然而,在SageMath中,有理数(分数)是精确的,所以我们永远不会看到这个舍入误差。因此,尽可能使用有理数(分数)而不是小数通常是一个好主意,尤其是在需要高精度的情况下。floor(1/(21/10-2))   输出:   10
  sqrt()该命令/函数计算实数的平方根。正如我们之前在分数中看到的那样,如果我们想要十进制近似值,我们可以通过给出一个十进制数作为输入来获得它。print(sqrt(3)) print( sqrt(3.0))   输出:   sqrt(3)   1.73205080756888   为了计算其他根,我们使用有理指数。SageMath可以计算任何有理数指数幂(SageMath can compute any rational power)。如果指数或基数是小数,则输出将是小数。print( 3^(1/2) ) print( (3.0)^(1/2) ) print( 8^(1/2) ) print( 8^(1/3) )   输出:   sqrt(3)   1.73205080756888   2*sqrt(2)   2
  SageMath 还支持所有标准三角函数,例如:正弦sin()和余弦 cos()print( sin(1) ) print( sin(1.0) ) print( cos(3/2) ) print( cos(3/2.0) )   输出:   sin(1)   0.841470984807897   cos(3/2)   0.0707372016677029   我们再次看到与SageMath相同的行为,SageMath将给我们一个确切的答案。你可能会想,既然没有办法简化,何必呢?好吧,一些涉及正弦的表达式确实可以简化。例如,几何学中的一个重要恒等式是 :   SageMath有一个内置的符号π,去使用这个恒等式:print(pi) print(sin(pi/3))   输出:   pi   1/2*sqrt(3)   在SageMath内,我们完全处理的是π,而不是一些数字近似。但是,我们可以使用以下方法调用数值近似:pi.n()print(pi.n()) print(sin(pi)) print(sin(pi.n()))   输出:   3.14159265358979   0
  1.22464679914735e-16   我们看到,当使用符号时,SageMath 返回确切的结果。但是,当我们使用近似值时,我们会得到一个近似值。是 的10^{-16}简写,数字应为零,但近似值引入了错误。以下是使用符号、精确 π 与数值近似的几个示例:print( sin(pi/6)) print( sin(pi.n()/6)) print( sin(pi/4)) print(sin(pi.n()/4))   输出:   1/2   0.500000000000000   1/2*sqrt(2)   0.707106781186547   继续我们的主题,有一些鲜为人知的特殊角度,可以巧妙地简化正弦或余弦的值。print( sin(pi/10)) print( cos(pi/5) ) print( sin(5*pi/12) )   输出:   1/4*sqrt(5) - 1/4   1/4*sqrt(5) + 1/4   1/4*sqrt(6) + 1/4*sqrt(2)   其他三角函数、反三角函数和双曲函数也可用print( arctan(1.0) ) print( sinh(9.0))   输出:   0.785398163397448   4051.54190208279   SageMath内与 π 类似,它有一个内置的数字符号常数e,即自然对数的底数。print(e) print(e.n())   输出:   e   2.71828182845905   虽然有些人可能熟悉使用自然对数和表示对数底10,但在SageMath中两者都表示对数底e。我们可以指定一个不同的基底作为命令的第二个参数:要在 SageMath 中计算:   我们使用命令:ln(x)、log(x)、log(x,b),幂基e可以使用函数和通过将符号常数提高到指定幂来完成。print( ln(e) ) print( log(e) ) print( log(e^2) ) print( log(10) ) print( log(10.0) ) print( log(100,10) ) print( exp(2) ) print( exp(2.0) ) print( exp(log(pi)) ) print( e^(log(2)) )   输出:   1
  1
  2
  log(10)   2.30258509299405   2
  e^2   7.38905609893065   pi   2
  好的,本次我们关于SageMath的探索就先介绍到这里,在后面的文章我们会陆续探索并介绍以下内容,希望感兴趣的朋友可以持续关注:   利用SageMath 求解方程和不等式 SageMath 2D 和3D 可视化介绍 SageMath 的数据结构及编程   《新语数据故事汇,数说新语》 科普数据科学、讲述数据故事,深层次挖掘数据价值。欢迎各位朋友投稿!   微信号|SnbDataStory   《新语数据故事汇,数说新语》

谷歌推出新的文本生成图像模型Muse,声称性能为同类最佳出品开源中国自2021年初以来,AI领域推出大量基于文本到图像的模型(例如DALLE2StableDiffusion和Midjourney等)。近日,谷歌也公开了一款名为Muse的VisualStudio配置COpenCV库的方法本文介绍在VisualStudio2022中配置编译C计算机视觉库OpenCV的方法。1OpenCV库配置首先,我们进行OpenCV库的下载与安装。作为一个开源的库,我们直接在其官从混动汽车到机械键盘,谈谈近年来国货的科技创新越来越多的朋友成为新能源车的车主,新能源车当然不等于纯电驱动的汽车。纯电是一种形式,除此还有氢燃料混合动力这类型的新能源车。相信肯定有杠精会说,为什么没有纯太阳能或者风力的新能源?由于这台计算机没有终端服务器客户端访问许可证解决方案电脑连接远程的win2003服务器时总是提示由于这台计算机没有终端服务器客户端访问许可证,远程会话被中断。请与服务器管理员联系。这个时候我们可以用这两种方法解决。1。在服务器上将终哈弗HDOG在海口车展首发特斯拉Model3和ModelY价格降至新低1。今日,哈弗品牌开年首款新能源车型哈弗HDOG正式在海口新能源车展亮相,在设计上,哈弗HDOG采用了全新的潮野力量美学设计,既传承了越野SUV的硬派造型风格,又加入了城市SUV的一代传奇落幕还是准备东山再起?马云现身泰国曼谷,毫无架子吃路边摊看泰拳比赛,还上阵打了一通。原来马老师是资深泰拳爱好者啊。不过今日,蚂蚁集团发布一份公告,马云的股份表决权从53。46调整为6。208,马云不再是英特尔发布全新U300系列处理器1大核4小核,基础功耗15WIT之家1月9日消息,英特尔在移动端取消了奔腾和赛扬品牌,取而代之的是IntelProsessor品牌。IT之家在英特尔官网注意到,IntelProsessor品牌下不仅有之前发布2023年,用大白话说科学思维常识(2)问为什么,探究规律举一反三规律必须建立在事实的基础上规律,实质上就是在现有事实的基础上通过逻辑体系得到的新的事实表述。先从特殊到一般做总结,例如很多人在不同环境重复实验多次,燃烧氢孙德良思想百科孙德良(网盛生意宝董事长)思想百科孙德良简介孙德良网盛生意宝董事长孙德良,男,1972年出生,浙江萧山人,1995年,毕业于沈阳工业大学计算机专业,大学本科。曾任深圳讯业集团有限公国医大师朱南孙,101岁高龄仍在坐诊,养生秘诀两不沾两坚持长寿二字,自古至今就是所有人共同的期望,古语有云人之大期,百年为限。可现如今,在上海中医药大学附属岳阳医院,却仍有一位102岁的老中医在行医问诊,她就是现任上海中医学院教授中医妇科节奏大师马尚布鲁克斯,国内后卫再接再厉!在1月7日广东和浙江的比赛中,虽然广东103114不敌浙江,但是马尚布鲁克斯的表现,依然让我感觉非常惊艳。从数据统计上看,马尚出场的30分钟内21中10,三分8中3,得到30分7篮
曾与茅台五粮液同获中国名酒称号,今走向破产重整,谁来搭救昔日河南酒王?每经记者可杨每经编辑文多昔日中国名酒之一的宋河酒业,正在等待下一个白衣骑士出现。据全国企业破产重整案件信息网显示,河南省宋河酒业股份有限公司申请破产重整,申请人与被申请人均为河南省初冬的早晨小城市的夜虽然比不上大城市的喧嚣,但也静得其乐,记的刚到来这个城市的第一感觉便是静,好生喜欢。雨声划破了夜间的沉默,也打扰了树的静,晨间上班的途中看到这一景不由的拿出手机记录。雨滴全国首例!北京海淀法院对一猥亵儿童教职人员宣告终身禁业中国青年报客户端北京11月15日电(中青报中青网记者韩飏)学校外聘教职人员多次猥亵女童,在女童家人报案后被抓获。记者今天从北京市高级人民法院获悉,北京市海淀区人民法院少年法庭近日对曾经的北漂人记起北京,一切重新开始我的生活日记每日一悟新人养成计划曾经固执地认为时间会淡忘一切,往事会如烟如梦般云消雾散。也曾以为在京城里渺小如微尘的我和我的往事只是鼓励好强的我挺直腰杆走过冬天走过曲折的一个内心深白酒有多久保质期?广州男子放30年白酒,行家不能喝,太值钱随着如今的老酒热,现在市面上很多的老酒陈酒稳居喝酒中的天花板。而且因为老酒的火爆,还因此产生了很多回收老酒的职业,如今可以说是高薪职业也不为过,一瓶老酒的价值有些可以上万,还有些甚川藏南线超详细攻略头条创作挑战赛上期菲夜给大家说过从这期开始,将用九期时间分别介绍进藏的九条线路攻略和注意事项。这期从最容易的川藏南线讲起,不多说,看攻略。路线图第一天在成都出发,行驶227公里来到儿童保险攻略给宝宝买保险应该怎么买?不管你的收入有多高都别轻易给孩子买保险给孩子买保险前先搞懂这4点先大人后孩子很多家庭想到要买保险都因为有了孩子以后,但是却忽略了自己其实家庭中最需要保障的是我们家长自己哦!家长是整5位成功的大码超重博主头条创作挑战赛5位成功的大码超重博主当前的美标准在数百万人的思想中根深蒂固。许多人认为模特应该特别长腿和瘦。但是,我们将讨论知名博主,他们使用个人示例表明,无论如何,美丽都不会隐藏我的生活不过如此,我的生命不过如此疫情静默前后的差别有没有?有,又好像没有。因为,静默之前无非就是想去哪里一按电钮就去了,封控之后,去哪儿都只是想想。其实,小区没封控时你坐在轮椅上晒太阳,封控了你还是只能坐在轮椅上鱼念七秒,人念七年,如有来生,我愿化作一条鱼鱼的记忆只有7秒,人的记忆又有多少?有人告诉我鱼的记忆只有7秒,7秒之后它就不记得过去的事情,一切又都要从新开始!所以在那小小的鱼缸里它永远不觉得无聊,因为7秒一过,每一个游过的地当黑夜降临的时候,他们竟然敢头条创作挑战赛如果有百分之二十的利润,资本就会蠢蠢欲动如果有百分之五十的利润,资本就会冒险如果有百分之一百的利润,资本就敢于冒绞首的危险如果有百分之三百的利润,资本就敢于践踏人间一