Mathematica求微分换元
【转载请注明出处】http://www.cnblogs.com/mashiqi
2017/12/16
有时我们需要对PDEs中的各项进行变量替换,比如把$\frac{\text{d}}{\text{d}x} f(x)$换成$\frac{\text{d}}{\text{d}y}g(y)$(其中$f(x)=g(y)$)。比如我想把$x$换成$\frac{1}{x}$,那么我可以令$y = \frac{1}{x}$、令$g(y) = f(x)$,然后用$g$对$y$的各阶导数$g^{(n)}(y)$来表示$f^{(n)}(x)$。那么我们可以使用以下语句:
(* Example 1 *)
y[x_] = 1/x;
Dt[g[y[x]], {x, 2}];
% /. x -> InverseFunction[y][y];
Refine[%,y!=0]
% // TeXForm (* 注意TeXForm里面 T X F 这几个都是大写 *)
% // TraditionalForm
Example 1说明:假设$y=1/x, ~f(x)=g(y)$,则 $f''(x) = y^4 g''(y)+2 y^3 g'(y)$。
(* Example 2 *)
y[x_] = 1/Sqrt[x];
Dt[g[y[x]], {x, 3}];
% /. x -> InverseFunction[y][y];
Refine[%, y > 0]
% // TeXForm (* 注意TeXForm里面 T X F 这几个都是大写 *)
% // TraditionalForm
Example 2说明:假设$y=1/\sqrt{x}, ~f(x)=g(y)$,则 $f'(x) = -\frac{1}{2} y^3 g'(y)$。
(* Example 3 假设$f(x)$是radial的。将$\Delta f(x)$记为$g(|x|)$,并用$g$来表示$f$ *)
y[x1_, x2_, x3_] = Sqrt[x1^2 + x2^2 + x3^2];
(* D[g[y[x1,x2,x3]],{x1,2}]+D[g[y[x1,x2,x3]],{x2,2}]+D[g[y[x1,x2,x3]],{x3,2}] *)
Laplacian[g[y[x1, x2, x3]], {x1, x2, x3}];
Simplify[%]
% /. x1^2 + x2^2 + x3^2 -> y^2;
Refine[%, y > 0]
Example 3说明:假设$x \in \mathbb{R}^3, ~y=\|x\|$,并且函数$f(x)$是radial的并记$f(x)=g(y)$,则 $\Delta_x f(x) = g''(y)+\frac{2 g'(y)}{y}$。
(* Example 4 假设$y=y(x)$,那么如何将$\frac{\mathrm{d}^2}{\mathrm{d}x^2}$用$y$表示 *)
Dt[g[y[x]], {x, 2}]
Example 4说明:假设$y=y(x)$,那么如何将$\frac{\mathrm{d}^2}{\mathrm{d}x^2}$用$y$表示出来:我们应该有:$\frac{\mathrm{d}^2}{\mathrm{d}x^2} = (y'(x))^2 \frac{\mathrm{d}^2}{\mathrm{d}y^2} + y''(x) \frac{\mathrm{d}}{\mathrm{d}y}$.
Mathematica求微分换元的更多相关文章
- 用mathematica求六元一次方程组且方程个数比变量个数少一个
问题详见知乎:https://www.zhihu.com/question/68000713 我的问题:有5个方程,6个变量,其实我是想求出来de1=(系数)*dS1的形式,系数有Cij组成,Cij为 ...
- [转]二重积分换元法的一种简单证明 (ps:里面的符号有点小错误,理解就好。。。
---恢复内容开始--- 10.3二重积分的换元积分法 在一元函数定积分的计算中,我们常常进行换元,以达删繁就简的目的,当然,二重积分也有换元积分的问题. 首先让我们回顾一下前面曾讨论的一个事实. 设 ...
- 求一个n元一次方程的解,Gauss消元
求一个n元一次方程的解,Gauss消元 const Matrix=require('./Matrix.js') /*Gauss 消元 传入一个矩阵,传出结果 */ function Gauss(mat ...
- MATLAB求微分
求微分 diff(函数) , 求的一阶导数;diff(函数, n) , 求的n阶导数(n是具体整数);diff(函数,变量名), 求对的偏导数;diff(函数, 变量名,n) ,求对的n阶偏导数; & ...
- YAPTCHA UVALive - 4382(换元+威尔逊定理)
题意就是叫你求上述那个公式在不同N下的结果. 思路:很显然的将上述式子换下元另p=3k+7则有 Σ[(p-1)!+1/p-[(p-1)!/p]] 接下来用到一个威尔逊定理,如果p为素数则 ( p -1 ...
- python求微分方程组的数值解曲线01
本人最近在写一篇关于神经网络同步的文章,其一部分模型为: x_i^{\Delta}(t)= -a_i*x_i(t)+ b_i* f(x_i(t))+ \sum\limits_{j \in\{i-1, ...
- Mathematica 求出解后代入变量
Solve[2 x - 3 == 0, x] x = x //. %[[1]]
- MT【180】齐次化+换元
已知实数$a,b$满足$a^2-ab-2b^2=1,$则$a^2+b^2$的取值范围_____ 解答:$\textbf{方法一}$由已知得$(a-2b)(a+b)=1$,设$x=a-2b,y=a+b$ ...
- MachineLearningPreface
机器学习(包括监督学习, 无监督学习, 半监督学习与强化学习) 监督学习(包括分类与线性回归) 分类(标签的值为散列的"yes"或者"no", "go ...
随机推荐
- idea中文乱码
- css修改原生radio样式
日常工作中经常会用到单选框radio,而原生样式不好看无法满足项目要求,模拟写一个又比较麻烦,所以写了一个改变原生样式的demo. 原生样式: 改变后的样式: 以下为demo代码: <!DOCT ...
- Cannot Connect to Database Server
好久没登数据库了,今天登陆时忽然要输入密码,然后一登结果就报了下图的错. 之前也发生过这种情况,但是重启服务就好了,这次重启后依然不行. 后来密码用root居然就登进去了,可是真不记得有改过密码 不知 ...
- docker搭建elk
docker run -d -p 5601:5601 -p 9200:9200 -p 5044:5044 -v /opt/data/elk-data:/var/lib/elasticsearch - ...
- React-Error
1. react创建一个单页应用,官网给的命令是ngx create-react-app my-project 2. window上表示,安装失败 3.解放办法:npm install -g crea ...
- Saiku数据库迁移H2迁移到Mysql(二十二)
Saiku数据库迁移H2迁移到Mysql Saiku默认使用H2数据库来存储saiku的用户与角色信息,我们可以根据角色来做saiku的权限控制,然后将角色分配给用户 ,该用户就会有对应的约束了! 由 ...
- Angular No name was provided for external module 'XXX' in output.globals 错误
Angular 7 开发自定义库时,引用ngZorroAntd,build过程中出现 No name was provided for external module 'ng-zorro-antd' ...
- C++之 类型定义语句--typedef
typedef的作用是给一个已经存在的数据类型起个别名. 使用的语法形式是:typedef 已有类型名 新类型名表;. 新类型名表中可以有多个标识符,它们之间用逗号分开,就是在一个typedef ...
- 随手心得(浅谈iOS)
前一段时间去一个公司面试,面试官问我关于iOS的ARC,当然ARC对于一般有经验的iOS程序员来说一般不是什么问题,但是他问我苹果是怎么实现的,我就说通过地址指针解决的,然后他问我那苹果指针指向地址是 ...
- SQLite3的MFC使用
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,支持跨平台,操作简单,能够使用很多语言直接创建数据库.官方网站:www.sqlite.org 在VC环境下编写连接SQLite的 ...