【Mathematica14.0】快速从下载安装到使用

news2024/11/26 4:49:05

目录

1.简介

2.下载安装

下载

安装

3.一小时掌握mathematica使用

单元模式

内置函数

符号表达式

迭代器

赋值

通配符及查找替换

函数定义

匿名函数(拉姆达表达式)

函数映射

函数式与运算符

函数自定义选项

图形可视化

交互式界面

数值

字符串

自然语言输入


1.简介

Mathematica是一款由Wolfram Research公司开发的科学计算软件,它将数值和符号计算引擎、图形系统、编程语言、文本系统以及其他应用程序的高级连接完美结合在一起。这款软件自1988年发布以来,已经在科技和其他领域产生了深远的影响,被广泛认为是现代科技计算的开端。

基本功能 :

(1)- 数值和符号计算:Mathematica能够进行高效的数值计算和精确的符号计算,如多项式求解、方程求解、极限求解、积分求解等。

(2)- 图形系统:提供强大的图形绘制功能,可用于创建高质量的二维和三维图形。

(3)- 编程语言:集成了高级程序设计语言,允许用户编写自定义脚本和函数。

(4)- 文本系统:支持文本编辑和处理,方便用户记录和分享计算过程。

(5)- 应用程序连接:能够与其他应用程序建立高级连接,实现数据和功能的集成。 主要应用领域 Mathematica的应用领域非常广泛,包括但不限于:

(6)- 科学研究:用于解决复杂的科学和工程问题,如物理、化学、生物学等领域的研究。

(7)- 工程设计:在航空航天、汽车制造等行业中用于模拟和分析。

(8)- 数据分析:处理和分析大量数据,提取有价值的信息。

(9)- 教育和学习:作为教学和学习的工具,帮助学生和专业人士掌握数学和编程技能。 在科研和教育中的重要性

(10)- 科研:Mathematica的强大计算能力和丰富的功能使其成为科研人员解决复杂问题的有力工具,加速了科研进程。

那我们就从各个方面去掌握这个软件!

2.下载安装

下载

mathematica是付费软件,如果公司或学校已经有了订阅,那么可以去官网进行下载安装,最新版本为mathematica 14.0:Wolfram Mathematica: 現代技術計算

也可以从我的网盘链接里直接下载(和我一样穷穷的朋友):

链接:https://pan.baidu.com/s/1E5Bb91UEpH-vo7g_tqGhDA?pwd=1aui 
提取码:1aui

安装

请根据安装包内教程进行安装

3.一小时掌握mathematica使用

mathematica的文档很强大,但是由于机器翻译或内容过于繁琐,可以直接看我的教程快速熟悉。

单元模式

 点击新文档开始使用:

mathematica的使用和jupyternotebook很像,也是按照单元进行组织

我们输入需要计算的内容后,按Shift+Enter运行,我们看见右边出现了单元分隔,在单元间点击也可以在单元间新建单元

内置函数

Wolfram 语言有6000多内置函数,函数参数间以逗号分隔,鼠标悬停函数可显示功能

详细内置函数后面我会再出教程,我们先掌握基本使用

符号表达式

mathematica其实是表达式构建的逻辑,万事万物可以总结为表达式,结构为head[arguments]

Graphics3D[Sphere[]]

我们使用列表来进行表达式操作,列表索引从1开始使用 [[ ... ]] 进行提取,跨提取使用[[a;;b]]

我们还可以对列表进行运算:

迭代器

我们使用内置Table函数进行迭代的演示,我们可以使用显式表达式计算或抽象表达式保存变量:

一个比较难理解的嵌套例子是:

其含义是创建一个二维数组,其中每个元素是由变量i除以变量j得到的值。这个命令指定了两个嵌套的迭代范围:外层迭代变量i从1到4,内层迭代变量j从1到2。        
具体来说,{i, 4}表示外层循环让i取值从1到4,而{j, 2}表示内层循环让j取值从1到2。对于每一个i的值,j都会分别取1和2,然后计算i/j的结果。因此,这个命令将生成一个4行2列的矩阵,其中的元素分别是当i取1到4,j取1和2时,i/j的计算结果。

赋值

可以进行即时赋值=延迟赋值:=(等要用的时候),也可以使用Module定义局部变量:Module[{局部变量定义}, 表达式],变量以小写命名

通配符及查找替换

使用"_"作为通配符,比如用Cases函数查找匹配模式、Replace函数替换、/. 表示全部替代

两个"_“表示任意表达式

java中的"|"表示,在这里也适用:

单独的"_"后加类型,可以进行数值模式匹配:

函数定义

和我们手写公式逻辑一样,可以通过Clear[f]删除赋值

可以进行局部赋值,或者打乱顺序赋值,没被定义的保留原样:

可以使用"/;"进行限制条件:

可以进行解构定义函数

匿名函数(拉姆达表达式)

函数中的参数我们使用#表示,可以用#1、#2........表示多个参数:

用于内置函数:这里&表示这是个函数

NestList函数用于嵌套,这里表示嵌套初始值为a的函数三次

函数映射

可以使用内置函数Map进行映射,也可以用/@简写:

Map可以在指定的层进行操作,默认第一层{}指定层:

可以使用Apply 将一个函数应用于多个参数,可以简写为@@

函数式与运算符

比如我们使用Nearest函数表示列表中最接近某个值的值,这个我们想接近的值可以在下一步及逆行调用,就可以使用函数式:%表示前一个结果

Select函数也同理:

函数自定义选项

我们可以先看一下可以自定义什么选项:

这段代码生成了一个三维表面图,其高度由函数 Sin[x y] 决定,其中 x 和 y 的取值范围都是从 0 到 3。
ColorFunction -> (Hue[#3/3, .5] &) 是一个选项,用于定义图形的颜色。这里使用了 Hue 函数来生成颜色,#3 代表的是第三个参数,即图形的高度(或 z 值),#3/3 将高度值归一化到 [0, 1] 范围内。.5 是 Hue 函数的饱和度参数,它决定了颜色的鲜艳程度。
因此,这个 Plot3D 命令将生成一个三维表面图,其颜色随着高度的变化而变化,高度越高,颜色越偏向某一色调,而饱和度的固定值 .5 保证了颜色的柔和度。当使用 & 时,需要圆括号

 

图形可视化

在这里可以进行快速可视化:

可以指定Style进行可视化:

交互式界面

可以用Manipulate函数进行交互式使用:

格式如下:Manipulate[Range[n], {n, 4, 10, 1}]

mathematica里的按钮Gui是集成的,以一行就可以使用

数值

使用N得到数值解

处理精度'可以指定精度

矩阵是列表的列表:

字符串

使用""包裹字符串,,使用<>连接字符串

字符串模版使用 `` 指明“插入符”,并用 <* ... *> 指明要计算的表达式:

自然语言输入

这个是个很神奇的功能,点击后可以自己输入一些东西,看看它的奇妙

好了,到此你已经将mathematica的快速入门的内容以精简的方式学习完了,如果有更多的问题,可以再查阅详细帮助文档。我觉得你应该已经完全掌握了其基本的使用,让Mathematica在你的世界里大放光彩吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1897856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

window系统openssl开发环境搭建(VS2017)

window系统openssl开发环境搭建 VS2017 一、下载openssl二、安装openssl三、openssl项目配置3.1 配置include文件3.2 配置openssl动态库四、编写openssl测试代码五、问题总结5.1 问题 一5.2 问题二一、下载openssl https://slproweb.com/products/Win32OpenSSL.html 根据自己…

本迪戈和阿德莱德银行与MongoDB合作, 利用生成式AI对银行核心技术进行现代化改造

MongoDB公司&#xff08;纳斯达克股票代码&#xff1a;MDB&#xff09;近日宣布与本迪戈和阿德莱德银行 (Bendigo and Adelaide Bank&#xff0c;澳大利亚证券交易所股票代码&#xff1a;BEN&#xff09;建立合作伙伴关系。 本迪戈和阿德莱德银行将使用MongoDB Atlas对其银行核…

自闭症孩子的语言之旅:最晚几岁会说话的探索与思考

作为在自闭症学校工作的教育者&#xff0c;我深知自闭症这一神经发展性障碍给孩子们带来的挑战&#xff0c;尤其是他们在语言发展方面的困难。自闭症孩子的语言发展轨迹各不相同&#xff0c;有的孩子可能早早地展现出语言天赋&#xff0c;而有的孩子则可能迟迟不开口。那么&…

Windows搭建本地对象存储服务MinIO并且使用springboot整合

开发文档&#xff1a; MinIO Windows中文文档 MinIO Object Storage for Windows &#xff08;英文文档&#xff09; 1、准备工作 准备一个空的文件夹&#xff0c;用来存放minio相关的内容&#xff1b; 这里是在D盘创建一个minio的文件夹&#xff1b; 后续所有跟MinIO相关…

【LLM】一、利用ollama本地部署大模型

目录 前言 一、Ollama 简介 1、什么是Ollama 2、特点&#xff1a; 二、Windows部署 1.下载 2.安装 3.测试安装 4.模型部署&#xff1a; 5.注意 三、 Docker部署 1.docker安装 2.ollama镜像拉取 3.ollama运行容器 4.模型部署&#xff1a; 5.注意&#xff1a; 总结 前言…

Ubuntu系统复制文件到共享文件夹出错

1、问题描述 Ubuntu系统复制文件到共享文件夹时&#xff0c;出现拼接文件时出错&#xff1a;输入/输出错误。 使用cp命令&#xff1a; cp -Rf XXX YYY 也是出错&#xff1a; cp: 写入 xxx 出错: 输入/输出错误 2、查看磁盘空间 查看磁盘空间&#xff0c;显示空间还有剩余…

【C语言】qsort()函数详解:能给万物排序的神奇函数

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:C语言 ⚙️操作环境:Visual Studio 2022 目录 一.qsort()函数的基本信息及功能 二.常见的排序算法及冒泡排序 三.逐一解读qsort()函数的参数及其原理 1.void* base 2.size_t num 3.size_t size 4.int (*compar)(c…

ANN文献综述

人工神经网络文献综述 摘要 人工神经网络&#xff08;Artificial Neural Networks, ANNs&#xff09;是由多个简单的、相互连接的处理单元组成的自适应系统&#xff0c;通过调整这些单元之间的连接强度&#xff0c;ANNs能够实现对复杂数据的建模和预测。本文综述了ANNs的基本…

进程、程序、应用程序之间的关系

文章目录 进程和程序进程和应用程序总结参考资料 进程和程序 程序&#xff1a;程序是存放在硬盘中的可执行文件&#xff0c;主要包括代码指令和数据。程序本身是一个静态的文件&#xff0c;只有在被操作系统加载到内存中并执行时才会变成进程。 进程&#xff1a;进程是程序在…

换根dp,CF 633F - The Chocolate Spree

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 633F - The Chocolate Spree 二、解题报告 1、思路分析 2600的题&#xff0c;但是不算很困难。 先考虑暴力做法&#xff0c;如何得到两条不相交的路径&#xff1f; 枚举删除的边&#xff0c;得到两棵子树…

Django自动生成Swagger接口文档 —— Python

1. 前言 当接口开发完成&#xff0c;紧接着需要编写接口文档。传统的接口文档通常都是使用Word或者一些接口文档管理平台进行编写&#xff0c;但此类接口文档维护更新比较麻烦&#xff0c;每次接口有变更&#xff0c;需要手动修改接口文档。在实际的工作中&#xff0c;经常会遇…

不错的用户需求访谈方法

不错的用户需求访谈方法&#xff0c;可以用如下的矩阵&#xff0c;用来引导用户访谈&#xff1a;

产科管理系统 专科电子病历系统源码,前后端分离架构,多家医院产科广泛运用,系统稳定,功能齐全

产科管理系统 专科电子病历系统源码&#xff0c;前后端分离架构&#xff0c;多家医院产科广泛运用&#xff0c;系统稳定&#xff0c;功能齐全 产科管理系统&#xff0c;特别是产科信息管理系统&#xff08;Obstetrical Information Management System&#xff0c;简称OIMS&…

NXP i.MX8系列平台开发讲解 - 3.18 Linux tty子系统介绍(一)

专栏文章目录传送门&#xff1a;返回专栏目录 Hi, 我是你们的老朋友&#xff0c;主要专注于嵌入式软件开发&#xff0c;有兴趣不要忘记点击关注【码思途远】 目录 1. TTY 起源 2. Linux 系统中的TTY 2.1 Linux TTY 设备形式 2.2 Linux TTY framework 2.3 驱动核心相关文件…

一键直达:2024最新Win10系统安装包!快来下载!

对于想体验Win10系统最新功能的用户来说&#xff0c;寻找可靠的最新系统安装包是特别重要的。接下来系统之家小编就给大家带来2024年最新Win10系统安装包&#xff0c;有需要的小伙伴一键点击就能开始下载。该系统安装步骤简单易懂&#xff0c;无需担心任何装机经验。 推荐下载&…

浅谈k8s中cni0和docker0的关系和区别

最近在复习k8s网络方面的知识&#xff0c;查看之前学习时整理的笔记和文档还有过往自己总结的博客之后发现一个问题&#xff0c;就是在有关flannel和calico这两个k8s网络插件的文章和博客中&#xff0c;会涉及到cni0和docker0这两个网桥设备&#xff0c;但是都没有明确说明他们…

AIGI赋能未来:人工智能如何重塑电子电路学习体验

文章目录 一、掌握基础知识与技能1. 扎实理论基础2. 熟练使用工具 二、融合AI技术提升学习效率1. 利用AI辅助学习平台2. 应用AI工具进行电路设计与仿真 三、探索创新应用方向1. 关注AI与电子电路的交叉领域2. 参与开源项目和竞赛 四、培养跨学科思维1. 加强数学与计算机科学知识…

单机多网卡互通——问题跟踪+工具分析

一、背景 想搭建soft ROCE(RXE)与实体ROCE设备互联的测试环境&#xff0c;为了节省机器以及使用方便&#xff0c;预想在配备ROCE卡的主机上&#xff0c;用另一个网卡绑定soft ROCE&#xff0c;然后互通。 [ETH1 ROCE] <--------------------> [ETH2 RXE] 二、问题跟…

【qt】如何获取网卡的信息?

网卡不只一种,有有线的,有无线的等等 我们用QNetworkInterface类的静态函数allInterfaces() 来获取所有的网卡 返回的是一个网卡的容器. 然后我们对每个网卡来获取其设备名称和硬件地址 可以通过静态函数humanReadableName() 来获取设备名称 可以通过静态函数**hardwareAddre…