Mathmatica简介
作者:桂。
时间:2018-06-27 21:53:34
链接:https://www.cnblogs.com/xingshansi/p/9236502.html
前言
打算系统学习一些数学知识,容易碰到一些复杂数学的求导、积分,Mathmatica在这方面有优势,简单了解一下,打算后续运算主要借助它来完成。
软件来自北邮人论坛。 学习资料——主要参考:Mathmatica权威指南.pdf。
一、Mathmatica简介
Mathmatica更侧重数学运算,主要功能有:
1)符号运算【仅这一点就能省去多少草稿纸?】
- 初等数学
- 微积分
- 线性代数
- 解方程组
- ....
2)数值计算
- 求极值
- 插值与拟合
- 数值积分
- 线性代数
- 线性规划
- 概率统计
- ....
3)数据可视化
主要是数据的展示,初步来看,Mathmatica个人觉得比MATLAB优秀。
基本界面:
二、Mathmatica常用操作
以后需要经常使用该软件,先熟悉常用快捷键:
遇到一个新工具,自然会问到3个问题:
1)如何查找帮助文档?了解该点就学会了解决问题的方法。
2)常用快捷键? 该点提高操作效率。
3)是否支持模块化? 该点对于复杂模型尤其重要。
A-查找帮助文档
参考网页:http://www.wolfram.com/mathematica/new-in-10/symbolic-geometry/integrate-over-regions.html
输入指令,右键:帮助。
或选中指令,F1.
帮助里可以查找所选函数,例如高数::
选择高等数学计算:
依次查找,该操作可作为学习手册使用,系统了解常用函数。
B-常用快捷键
- shift enter:运行
- Crtl + N:新建笔记本
- Crtl + home/end:跳转
- Crtl + K,类似TAB,完整指令名
- Crtl + O:打开文件
- Crtl +shift + B: 检查括号平衡
- 停止:crtl + break
- 继续:F5 步进F10 步入F11 步出SHIFT+F11 中断F9 步出shift+CRTL+F9
- 清除变量:clear[var]
- 清屏:可关闭 + Crtl N的操作 /Crtl + A ,del
- 其他用到再补充,参考附件。
可借助面板——数学助手,类似mathtype敲打公式,自动转换为mathmatica指令:
其中包括公式中的特殊字符:
C-模块化
Crtl + N ,新建*.nb格式的文件。
三、常用数学运算
A-基本项
1)平方根:Sqrt[ ],首字母大写+中括号[] -> 指令的标配。
2)Sin[Pi/2] Cos
3) Sqrt[-1] = i
4) N[exp, n] 给出exp的n位有效数字近似值
5)%调用前一次计算结果,%%再前一次,依次类推,如
Out[1] a=3
In[2] s = b+% 等价于s = b+ a
6)解方程:Solve,如Solve[x^3-2x+1 == 0]
7)多项式展开 Expand[(1+x)^10] Factor因式分解
8) Factorial[n]阶乘
9)Random伪随机数
10)Round, Floor, Ceiling, GCD, LCM, Sin Cos Tan Sec Cot Sin[Pi/3] = Sin[60 Degree]
11)Log自然对数,Log[2,100] log_2^100
12)
加Plus[a,b,c]
减Subtract
乘Times
除Divide
指数Power[a,b]
13)累加:,
14)连乘
15)二项式
16)条件语句、循环语句
17)自定义函数(下划线)
18)序列Range[10]
19) 矩阵-花括号
B- 解方程
1)Solve[方程,变量], 1个变量时,变量可忽略。
2)多个方程式:Solve[{方程1,方程2,....},{变量1, 变量2, ...}]
3)对于超越方程,可以借助FindRoot( 本质是梯度下降 )
4)多项式化简Simplify[Expression]
C- 微分运算
1)极限运算 Limit[f(x), x->a, Direction ->1]其中Direction 可省略,1为左趋近,-1为右趋近。
2)自定义函数f,导数f',3阶导数f''',依次类推。
3)D[f[x],{x,n}]针对x求n阶导
4)多元 D[f[x,y],{x,n},{y,m}]针对x求n阶导
D- 积分运算
1)Integrate[f[x],x]
2)Integrate[f[x],{x,a,b}]
3)多重积分
E- 常微分方程
1)Dsolve[方程,y,x]
2)拉普拉斯变换
F-其他
1)添加备注:(*此处内容忽略*)
2)自然对数底是E,而不是e,区分大小写,Pi、Infinity(无穷)等等常数都是如此。
3) 搜索指令: ?*关键词*,即通配符的模糊匹配查找。
四、基本作图
暂时无此需求,用到再说。
Mathmatica简介的更多相关文章
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- HTTPS简介
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- Cesium简介以及离线部署运行
Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- 在ArchLinux中安装MySQL
最近前端学习用到数据库的知识.鉴于MySQL被甲骨文收购的情况,我从MariaDB开始学习.操作系统Manjaro 17.1, 数据库版本MariaDB 10.1. 1. 安装MariaDb和其客户端 ...
- CLR Via 第一 章 知识点整理(1)
写这个纯粹是自己的一点学习总结,其实就学习的笔记整理,相当于对自己的一点督促,如有看到不正确的欢迎指出 一般我们写代码都是使用的高级语言,但是在CLR中运行的代码并不是我们直接写的代码,而是通过我们选 ...
- 开发环境之git:团队协作git工作流与常用命令
此篇文章只是一篇傻瓜式的,记录工作中比较规范且常见的一个git工作流需要用到的命令,让你可以快速的开始工作.而不是一些长篇大论的理论知识,如果你有用过sourcetree或者其它图形化工具,结合你正在 ...
- asp.net core Session的测试使用心得及注意事项
sp.net-core中Session是以中间件的形式注册使用的.不比asp.net中的使用,直接使用Session就行. 首先在.net-core框架中注入Session中间件,首先在Configu ...
- SpringBoot的国际化使用
在项目中,很多时候需要国际化的支持,这篇文章要介绍一下springboot项目中国际化的使用. 在这个项目中前端页面使用的thymeleaf,另外加入了nekohtml去掉html严格校验,如果不了解 ...
- node安装及配置之windows版
一.下载地址 https://nodejs.org/zh-cn/download/ https://nodejs.org/zh-cn/download/releases/ 二.安装步骤 1.双击“no ...
- 解决nuxt.js新建项目报错的问题
查了一下nuxt的github才知道是node.js版本太低造成的,据说升级到8.6以上就可以了(本人直接升了9.9) node_modules\nuxt\lib\core\middleware\nu ...
- 全排列 ---java
排列的一种好方法,用链表来记录数据,简单明了,简称模板,值得记录 public class main{ static int count=0; public static void f(List< ...
- oracle 存储过程调用方式
Oracle存储过程包含三部分:过程声明,执行过程部分,存储过程异常. Oracle存储过程可以有无参数存储过程和带参数存储过程. 一.无参程序过程语法 1 create or replace pro ...
- python之类和对象
对象(object)基本上可以看做数据(特性)以及由一系列可以存取.操作这些数据的方法所组成的集合. 类,可以看成种类,类型,从一组对象中提取到的相似部分.所有的对象都属于一个类,称为类的实例. 之前 ...