新闻,观点和见解
beplay体育官网下载app
新的互动课程从专家程序员教有用的技巧
beplay体育官网下载app具有大量的内置函数,这些函数很少或不需要编程,但在某些特殊情况下,需要额外的技能和知识才能使代码执行超出这些内置功能的操作。beplay体育手机官网安卓版Wolfram U很高兴宣布一个新的免费互动课程,由资深Wolfram程序员和教练Dave Withoff提供了一个有用的技巧和中级程序员的指导集beplay体育手机官网安卓版合。本课程将扩展您对Wolfram语言的理解,并帮助您编写更复杂的自定义结果程序。beplay体育官网下载appbeplay体育手机官网安卓版
让我先说一下,对于语言初学者来说,免费的互动课程Wolfram语言的基本介绍beplay体育官网下载appbeplay体育手机官网安卓版仍然是开始学习如何使用Wolfram语言编写程序的最佳方式。beplay体育官网下载appbeplay体育手机官网安卓版Wolfram语言编程指南beplay体育官网下载appbeplay体育手机官网安卓版旨在为准备深入研究语言的用户提供后续课程。
如果您已经熟悉这门语言,并准备深入研究更高级的主题,您可以在阅读博客文章的其余部分之前,通过点击下面的图片来探索交互式课程。
来自历史的动机
为了向世界介绍Wolfrabeplay体育手机官网安卓版beplay体育官网下载appm语言和现代计算思维,Stephen beplay体育手机官网安卓版Wolfram发表Wolfram语言的基本介绍beplay体育官网下载appbeplay体育手机官网安卓版在2015年。的功能增益beplay体育手机官网安卓版Wolfram云很快,这本书就变成了一个完整的交互式在线课程,包括视频、练习和一个简单易用的笔记本,任何人都可以上网。事实上,自推出以来,这门入门课程在全球的电脑、平板电脑和智能手机上的浏览量已超过100万次。
新的中级编程课程源于用户对更高级课程的兴趣,并希望解决有经验的用户有关任务和评估规则、模式、程序接口和绘图等主题的问题。自发布以来,Dave Withoff一直在使用Wolfrbeplay体育手机官网安卓版beplay体育官网下载appam语言Mathematica 1.2在1989年。Dave是Mathematica早期版本的包和内部代码的开发人员,是学术界和Wolfram u的一位经验丰富的讲师。他使用他的语言专业知识来创建新的课程,分享他多年来开发的技巧和技术。beplay体育手机官网安卓版
概述
在开始课程之前,学生应该对Wolfram语言编程有一定的了解,其中包括一些中级beplay体育手机官网安卓版beplay体育官网下载app水平的主题,例如表达式的结构,变量本地化和其他关于系统基本设计的细节。后面的部分包括速度和内存效率、交互式用户界面的构建、数据可视化和调试。
以下是课程中包含的一些课程的快速浏览(在左侧一栏的目录中显示):
即使内容超出了入门水平,完成这门课程应该不会花很长时间。你应该能够在大约4小时内完成22个短视频和8个小测验。课程自动跟踪您的进度,并在您完成课程时生成您的个性化结业证书。
本文接下来的几部分将详细描述不同的交互式课程组件。
教训
课程主体是一套22课,从“多范式编程”开始。这节介绍性课程使用实际示例来说明不同的编程风格,随后是关于函数式和基于规则的编程的专门课程,演示用Wolfram语言编写程序的不同方法。beplay体育官网下载appbeplay体育手机官网安卓版
课程部分包括“基本语言结构”、“值和变量”、“常用特殊表达式”、“程序接口”、“绘图”、“分析和优化程序”和“选定应用程序”。每个部分有两到三节课和一个自动评分的测试来测试你的理解。
视频长度从6分钟到15分钟不等,每个视频都配有一个课程笔记本,显示在屏幕的右侧。有一个嵌入式的草稿笔记本,你可以直接从课程中复制和粘贴Wolfram语言输入,这样你就可以自己尝试这些例子。beplay体育官网下载appbeplay体育手机官网安卓版
练习
每节课都有一套练习来练习这些概念。每个练习都有详细的解决方案,因为这门课程是为独立学习而设计的。下面是“程序接口”一节中关于知识表示的例子:
带有练习的笔记本是交互式的,因此学生可以在Wolfram Cloud中尝试每个问题的变化。beplay体育手机官网安卓版特别地,鼓励他们在例子中改变变量并研究文档以及内置函数的可用选项。
小测验
每个部分的最后是一个简短的选择题测试,有10道题。测验的问题与课程中展示的问题大致相同,一个彻底复习了这部分内容的学生在测验中取得好成绩应该没有困难。
学生们将收到关于他们对测试问题的答案的即时反馈,并鼓励他们尝试手工和计算机计算来解决这些问题。
认证可用
我们鼓励学生观看所有课程,并按照推荐的顺序进行测验,因为课程主题可能依赖于早期的概念和技术。当你完成课程后,你可以下载一份个性化的结业证书。在观看所有课程并通过所有测验后,您将获得课程证书。使用Wolfram ID在课程中自动跟踪您的进度,如果您退出并稍后返回课程,则可以轻松地继续您离开的地方。beplay体育手机官网安卓版课程证书为你的专业简历、学校和工作申请或社交媒体档案增添价值。本课程提供有用的准备beplay体育手机官网安卓版beplay体育官网下载appWolfram语言一级认证考试该校鼓励学生参加该考试并获得资格证书。
来自每日学习小组参与者的反馈
beplay体育手机官网安卓版Wolfram U提供了课程课程和测验的先睹为每日学习小组我们收到了一些有价值的反馈。以下是参与者的回答:
“这门课程能让我少敲键盘,并教会我如何减少电脑运行时间,从而提高了工作效率。“(练习)总是很有用和有趣的。””“选择题足以测试一个人的知识。最好的练习是当我们被要求为一个具有特定结果的问题编写解决方案时。显示了Wolfram语言的通用性。beplay体育官网下载appbeplay体育手机官网安卓版”“我参考了课程中包含的各种笔记本,作为适用于我正在从事的任务的概念的例子和演示。那些处理符号计算的是最有帮助的。“编程指南非常有用,提供了对语言的深入了解。”成功的基石
我相信您会发现,在您成为Wolfram语言更高级、更熟练的用户的过程中,这个新的互动课程将是一次愉快的学习体验,就像我们的日常学习小组一样。beplay体育官网下载appbeplay体育手机官网安卓版我希望你能联系我们,让我们知道你觉得这门课程有什么帮助,并分享你的故事。一如既往,我们欢迎您对未来的课程和认证提出任何意见或建议。
致谢
我很感谢Wolfram的Andre Kuzniarek提出的课程概念;beplay体育手机官网安卓版感谢作者Dave Withoff,他响应号召创建了这个编程主题集;以及为实现这一目标做出beplay体育手机官网安卓版贡献的Wolfram U工作人员。我要特别感谢Wolfram U团队的Cassidy Hinkle, Laura Crawford和Mariah Laugesen。beplay体育手机官网安卓版
需要复习Wolfram语言吗?beplay体育官网下载appbeplay体育手机官网安卓版报名参加beplay体育手机官网安卓版beplay体育官网下载appWolfram语言基础每日学习小组. |
来自我们研发管道的最新版本:Wolfram Language & Mathematica 13.2版beplay体育手机官网安卓版beplay体育官网下载app
2020年是版本12.1和12.2;2021年版本12.3和13.0。今年6月下旬,它推出了13.1版。现在我们正在发布13.2版本。我们继续拥有庞大的研发管道,有些是短期的,有些是中期的,有些是长期的(比如十年以上)。我们的目标是及时交付[…]
用Wolfram语言学习代数beplay体育官网下载appbeplay体育手机官网安卓版
树木继续生长
去年,我们发布了13.0版本beplay体育官网下载app.下面是自那时以来树的更新,包括13.1的最新功能。
树木继续生长
在版本12.3我们介绍了树作为一种新的基本结构beplay体育官网下载app.在13.0版本中,我们为树添加了各种样式选项,在13.1版本中,我们添加了更多的样式以及各种新的基本特性。
这是对基本原理的重要更新树在13.1版中,构造函数是在每个节点上命名分支的能力,通过在关联中给出它们:
& # 10005 |
所有树函数现在都支持关联:
& # 10005 |
在树的许多应用中,节点的标签是至关重要的。但特别是在更抽象的应用程序中,人们经常希望处理未标记的树。在版本13.1中,函数UnlabeledTree(大致类似于UndirectedGraph)取一个有标签的树,并基本上删除所有可见的标签。这是一个标准的标记树
& # 10005 |
这里是未标记的类比:
& # 10005 |
在版本12.3中,我们介绍了ExpressionTree从一般的符号表达式中推导出树。我们的计划是有一个广泛的“特殊树”,适合代表不同的特定类型的象征性表达。我们在版本13.1中开始了这个过程,例如,有了“数据集树”。这是ExpressionTree将数据集转换为树:
& # 10005 |
这里是TreeExpression“反转”,并生成一个数据集:
& # 10005 |
下面是一个更复杂的数据集树的“图形渲染”:
& # 10005 |
新函数TreeLeafCount让您计算树上叶子节点的总数(基本上类似于LeafCount一般的符号表达):
& # 10005 |
在不检查每个节点的情况下了解树的结构时,版本13.1中另一个经常有用的新函数是RootTree.这是一棵随机树:
& # 10005 |
RootTree可以得到一个“接近根”的子树:
& # 10005 |
它还可以得到一个“远离叶子”的子树,在这种情况下,它会向下到树中处于-2级的元素:
& # 10005 |
在某些方面,树的样式化类似于图的样式化——尽管由于树的层次性质,有一些显著的差异。默认情况下,插入到特定树元素中的选项只影响该树元素:
& # 10005 |
但是你可以给出规则,指定该元素下面的子树中的元素是如何受到影响的:
& # 10005 |
在版本13.1中,现在有详细的控件可用于样式化树中的节点和边。下面是一个为节点的父边提供样式的例子:
& # 10005 |
选择喜欢TreeElementStyle从元素的位置确定样式。TreeElementStyleFunction,另一方面,通过对每个节点上的数据应用函数来确定样式:
& # 10005 |
这使用了每个节点的数据和位置信息:
& # 10005 |
类比于VertexShapeFunction图,TreeElementShapeFunction提供一种通用机制来指定应如何呈现树的节点。此命名设置为TreeElementShapeFunction使每个节点显示为一个圆:
& # 10005 |
感恩节的沃尔夫勒姆方式beplay体育手机官网安卓版
13.1:视觉效果和美化新增
去年,我们发布了13.0版本beplay体育官网下载app.以下是自那时以来在视觉效果和美化方面的更新,包括13.1中的最新功能。
视觉效果和美化
起初,这似乎是一个次要功能。但一旦我们实现了它,我们意识到它比我们预期的要有用得多。就像你可以用图形对象的颜色来设置图形对象的样式一样版本13.0它的填充模式),现在在13.1版中,你可以用它的投影样式:
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
13.1新增:超越列表:引入线程
去年,我们发布了13.0版本beplay体育官网下载app.下面是自那时起列表功能的更新,包括13.1的最新功能。
超越列表:引入线程
从Mathematica和beplay体育官网下载app我们已经有了列表性的概念:例如,如果你添加两个列表,它们对应的元素将被添加:
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
& # 10005 |
13.1:大学和分数阶微积分新功能
去年,我们发布了13.0版本beplay体育官网下载app.这里是大学和分数阶微积分从那时起的更新,包括13.1中的最新功能。
大学微积分
改变大学微积分是Mathematica的早期成就之一。但即使是现在,我们仍在继续添加功能,使大学微积分变得更容易、更流畅——更直接地连接到应用程序上。我们一直都有这个函数D求一点的导数。现在在版本13.1中,我们添加了ImplicitD求隐导数。
例如,它可以求出的导数xy关于x,y由约束隐式决定x2 +y2 = 1:
& # 10005 |
去掉第一个参数,你会得到标准的大学微积分“求曲线的切线斜率”:
& # 10005 |
到目前为止,所有这些都是对我们长期存在的微积分功能的相当直接的重新包装。事实上,这些隐式导数在Wolfram|Alpha中已经存在很长时间了。beplay体育手机官网安卓版但是对于Mathematica和beplay体育官网下载app我们希望所有的东西都尽可能的一般化,并且支持微分几何中出现的东西,比如渐近和微分方程隐解的验证。除了普通的大学微积分,ImplicitD可以做一些事情,比如在由两个曲面相交定义的曲线上求第二个隐导数:
& # 10005 |
在Mathematica和Wolfram语言beplay体育官网下载appbeplay体育手机官网安卓版集成是一个能得到答案的函数。(在Wobeplay体育手机官网安卓版lfram|Alpha中,您也可以要求一步一步的解决方案。)但特别出于教育的目的,有时也在突破可能的界限时,分步骤做积分是有用的。因此,在版本13.1中,我们添加了该函数IntegrateChangeVariables在积分中变换变量。
一个直接的问题是当你指定一个积分集成[…],集成继续做积分:
& # 10005 |
但对于IntegrateChangeVariables你需要一个“未完成”积分。你可以用这个不活跃的,如:
& # 10005 |
对于这个非活跃形式,我们可以用IntegrateChangeVariables要做“三角替换”:
& # 10005 |
结果又是一个无效的形式,现在以不同的方式表示积分。激活然后进行积分:
& # 10005 |
IntegrateChangeVariables可以处理多重积分以及命名的坐标系统。这里是把二重积分转换到极坐标
& # 10005 |
虽然积分中变量的基本“结构”变换相当简单,但整个过程IntegrateChangeVariables是相当复杂的。“大学水平”的变量变化通常是精心安排的,很容易得出。但在更一般的情况下,IntegrateChangeVariables最后不得不做几何区域的非平凡变换,受某些约束的被积函数的困难简化,等等。
除了在积分中变换变量,13.1版还介绍了DSolveChangeVariables微分方程中的变量变换。这里是把拉普拉斯方程转换成极坐标
& # 10005 |
有时候变量变换只是为了方便。但有时(想想广义相对论),它会让人对一个系统产生完全不同的看法。例如,在这里,指数变换将通常的柯西-欧拉方程转换为常系数形式:
& # 10005 |
分数微积分
一阶导数x2等于2x;二阶导数是2。导数是什么呢?这个问题(比如莱布尼茨)甚至在微积分的最初几年就被问到过。到了19世纪,黎曼和刘维尔给出了答案——在13.1版中,这个答案现在可以用新版计算机计算出来FractionalD:
& # 10005 |
对,再求导,就会得到一阶导数
& # 10005 |
在更一般的情况下我们有:
& # 10005 |
这甚至适用于负导数,因此,例如,(-1)st导是一个普通积分:
& # 10005 |
计算分数阶导数至少和计算积分一样困难。但FractionalD还能经常做吗
& # 10005 |
尽管结果很快就会变得相当复杂:
& # 10005 |
为什么FractionalD一个单独的函数,而不仅仅是泛化的一部分D?我们讨论了很久。我们引入显式的原因FractionalD分数阶导数并没有唯一的定义。事实上,在版本13.1中,我们还支持Caputo分数阶导数(或微分积分)CaputoD.
对于的导数x2、答案还是一样:
& # 10005 |
但是只要函数不为零x= 0,答案可以不同:
& # 10005 |
CaputoD是分数阶微分的一个特别方便的定义当我们处理拉普拉斯变换和微分方程时。在版本13.1中,我们现在只能计算CaputoD也可以做积分变换,解相关的方程。
这是一个-阶微分方程
& # 10005 |
还有-o (1
& # 10005 |
以及π阶的:
& # 10005 |
注意MittagLefflerE.这个函数(我们在版本9.0)在分数阶导数中起着同样的作用经验值对于普通的导数。