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

带你用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   《新语数据故事汇,数说新语》

三星GalaxyS23Ultra提前剧透,2亿像素机皇袭来,三星不再沉默近几年,在国内手机市场很少见到三星手机,线下旗舰店也越来越少,国内市场占有率有所降低,不过从全球市场看,三星手机的霸主地位依旧没有改变,当然处于领先地位。得益于三星手机的出色的品质唐山女教授替安倍发声,对伟人去世幸灾乐祸,如今下场大快人心文掘密探索家编辑掘密探索家安倍晋三被枪杀的消息一出,就在世界范围内引起了轩然大波,中国的网友们也都在为此议论纷纷,但是偏偏有人要出头冒尖,在网上大放厥词。她不仅对安倍晋三的死表示同中俄海上军演055给足了面子,俄网友已超越美国军舰中俄海上联合军演让谁不安国产055大驱是什么水平文肥佬茄子千呼万唤始出来,俄罗斯一年一度的战略军演终于拉开序幕。而在这场战略演习中最引人注目的重量级参与者,自然是首次参加该系列军演1966年,73岁老首长畅游长江引来百姓围观,人群突然惊呼毛主席1966年7月16日,武汉第十一届渡江比赛现场人声鼎沸,热闹非常,足足有5000余名游泳健儿参加了本次比赛,一时间,大江两岸站满了来参加比赛的选手及其家属。突然,一艘快艇驶入现场,在外国人眼里,中国军队到底是什么样的?日韩的答案出乎意料从工农红军到现在的解放军,我军身上的精神和理念从未改变过,由此形成了中国军人和中国公民之间这种非常亲切的关系。因此在中国人眼里,中国军队是神圣威严且亲切的。那么在中国之外,别国的居103岁老红军熊玉坤一生跟党走,一步不掉队图熊玉坤上世纪50年代留影。受访者供图图2019年,100岁的熊玉坤稳稳端起轻机枪。周阳摄知记者要视频采访,老红军熊玉坤一大早就开始准备。除了换上那身挂满奖章纪念章的老式军装,他还中俄打头阵,14国60艘舰艇集结演练,我军055大驱率先挺进日本海据俄罗斯国防部近日发布的消息,东方2022战略指挥演习将在9月正式开启,关于此次军演,将有中国印度蒙古等共13个俄罗斯伙伴国受邀参演。届时,14国将有逾5万军人140架飞机60艘舰正山堂巴东红饮长江水品巴东红冠名列车在北京首发8月29日,正山堂巴东红品牌冠名高铁列车首发仪式在北京西站隆重举行。11时13分,随着以饮长江水品巴东红冠名的北京西开往重庆北的G351次高铁列车缓缓启动,正山堂巴东红将借力四通八墨西哥最后的防线海军陆战队最近网传墨西哥最后的希望,墨西哥海军陆战队这是一只人数达到1。3w的人缉毒部队,如今就只剩下1000多人,大部分不是被收买就是已经牺牲在缉毒的工作岗位上。他的眼神里透露出对战友牺牲中国医疗器械市场高速增长,三鑫医疗上半年业绩超预期,研发投入不断提高中国医疗器械市场高速增长,国产替代进程加快。2020年中国医疗器械市场规模达到7789亿元,灼识咨询公司预计2020年2030将保持11的复合增速。从总量来看,中国医疗器械与药品市650亿欧元他相信能挺过这个冬天当地时间9月4日,德国政府宣布推出第三轮总金额为650亿欧元(约合4465亿元人民币)的救助方案,以帮助民众和企业应对能源价格飙升和高通胀。对于包括德国在内的欧洲国家将能源价格高企
酒商生死100天生死100天,这是最近业内讨论颇为热烈的一个话题。自12月7日新十条发布以后,在接下来的三个多月共计约100天的时间里,全国各地都将经历一轮染阳的过程。华润啤酒CEO侯孝海判断随着A股三大指数冲高回落收跌逾4000股收跌,北向资金净流入高开低走,沪指连跌6日。受隔夜外围市场上涨的提振,A股三大股指12月22日集体高开。早盘两市冲高回落,午后两市继续震荡回落,科创50更是很快跌超1。尾盘两市跌幅略有收窄,但两市超4三星正优先开发适用于2024年款iPadPro的新型OLED屏幕IT之家12月22日消息,援引韩媒TheElec报道,三星正优先开发用于2024年苹果iPadPro的专用OLED屏幕。报道中指出这种新型OLED屏幕采用双层串联(twostack荣耀Magic4Pro抓住机会清仓,12G512G都降了1100,你还犹豫吗?从口碑上讲,在国产高端机中,荣耀Magic系列占有重要地位。如果有五六千的购买预算,很多人都会在小米OV荣耀的高端机中选择荣耀。用户的使用体验是不会骗人的,如果使用体验不好,那荣耀突遇黑天鹅金价再度大涨,投资者加配黄金类资产,黄金ETF还有布局机会吗?本周以来,黄金价格再现波动。周二,日本央行突然转向压力美元汇率,从而提振了避险资产的价格,黄金期货收于一周新高。进一步来看,自11月以来,COMEX黄金价格更已上涨了超10。这一背想当女兵?机会来了!全国征兵(女兵)2023年上半年应征报名工作从2023年1月1日开始想成为英姿飒爽的女兵?快来报名吧应征报名对象和应征报名时间上半年应征报名对象普通高等学校和科研机构全日制应届毕业想当女兵?机会来了!想成为英姿飒爽的女兵?快来报名吧应征报名对象和应征报名时间上半年应征报名对象普通高等学校和科研机构全日制应届毕业生及在校生,年满18至22周岁(2001年1月1日2005年12月3这次的vivoS系列,又双叒叕,给大伙整了点新的花样不知道机友们有没有这种感觉。蓝厂平时不开发布会就不开,一旦开起来,那就是成串的。这不,上月底发布的vivoX90系列,这会还是大伙争相讨论的对象呢。结果现在又轮到新一代S系列,出来青少年Python编程系列33Python第三方库安装和使用Python成为最流行的语言之一,除了它的简单易学和语法简单外,还有一个重要的原因是Python有非常强大的第三方库。第三方库不是官方的内置库,而是由社区大量的开发者提供的,据统计罗杰杜彼RogerDubuis王者系列星际镂空艺术家合作腕表Hypebeast于最出乎意料之处,探寻创作灵感,是罗杰杜彼RogerDubuis与生俱来的专长。与志同道合的盟友一同,打破规则以极具未来感的设计作品,惊艳世界每款卓绝时计,皆是当代文化与生活方式的来自世界各地的5个不寻常的轶事梵蒂冈是世界上最小的国家您知道罗马与另一个州有直接边界吗?是梵蒂冈!它不到1平方公里,有832名居民,是地球上最小的国家!因此,梵蒂冈拥有自己的管辖权自己的邮局和警察局一个您在罗马