用mathematica求六元一次方程组且方程个数比变量个数少一个
问题详见知乎:https://www.zhihu.com/question/68000713

我的问题:有5个方程,6个变量,其实我是想求出来de1=(系数)*dS1的形式,系数有Cij组成,Cij为常数。怎样求?具体方程下面代码可以看出(sys1里时方程,var1里时变量,b是一个大于等于0小于等于1常数)
我是用mathematica求的,参考http://reference.wolfram.com/language/tutorial/SolvingEquations.html
Eliminate[{de1-C11*dS1-C12*dS2-C13*dS3==0,de2-C21*dS1-C22*dS2-C23*dS3==0,de3-C31*dS1-C32*dS2-C33*dS3==0,de1+de2+de3==0,(dS1-dS3)*b-(dS2-dS3)==0},{de2,de3,dS2,dS3}]
Eliminate[{de1 - C11*dS1 - C12*dS2 - C13*dS3 == 0,
de2 - C21*dS1 - C22*dS2 - C23*dS3 == 0,
de3 - C31*dS1 - C32*dS2 - C33*dS3 == 0, (de1 + de2 + de3)/de1 ==
0.5, (dS1 - dS3)*b - (dS2 - dS3) == 0}, {de2, de3, dS2, dS3}]
Solve[C11 (2.` C22 - 2.` b C22 + 2.` C23 + 2.` C32 - 2.` b C32 +
2.` C33) dS1 ==
C12 de1 - 1.` b C12 de1 + C13 de1 + 2.` C22 de1 - 2.` b C22 de1 +
2.` C23 de1 + 2.` C32 de1 - 2.` b C32 de1 + 2.` C33 de1 +
2.` C12 C21 dS1 - 2.` b C12 C21 dS1 + 2.` C13 C21 dS1 +
2.` b C13 C22 dS1 - 2.` b C12 C23 dS1 + 2.` C12 C31 dS1 -
2.` b C12 C31 dS1 + 2.` C13 C31 dS1 + 2.` b C13 C32 dS1 -
2.` b C12 C33 dS1, {de1, dS1}]
{{dS1 -> 0. - (0.5 (-1. C12 + 1. b C12 - 1. C13 - 2. C22 + 2. b C22 - 2. C23 - 2. C32 + 2. b C32 - 2. C33) de1)/(-1. C12 C21 + 1. b C12 C21 - 1. C13 C21 + 1. C11 C22 - 1. b C11 C22 - 1. b C13 C22 + 1. C11 C23 + 1. b C12 C23 - 1. C12 C31 + 1. b C12 C31 - 1. C13 C31 + 1. C11 C32 - 1. b C11 C32 - 1. b C13 C32 + 1. C11 C33 + 1. b C12 C33)}}
用mathematica求六元一次方程组且方程个数比变量个数少一个的更多相关文章
- 【Java例题】4.3 3. 使用Gauss消元法求解n元一次方程组的根,
3. 使用Gauss消元法求解n元一次方程组的根,举例,三元一次方程组:0.729x1+0.81x2+0.9x3=0.6867x1+x2+x3=0.83381.331x1+1.21x2+1.1x3=1 ...
- math & 三元一次方程组的解法
math & 三元一次方程组的解法 class 6 math 例题 问题: 1. 已经做好的与没有做好的比例是 5 比 7; 2 再做好51,完成总数的 70%; 3. 问,一共要做多少朵花? ...
- 求一个n元一次方程的解,Gauss消元
求一个n元一次方程的解,Gauss消元 const Matrix=require('./Matrix.js') /*Gauss 消元 传入一个矩阵,传出结果 */ function Gauss(mat ...
- Java基础_循环嵌套_打印乘法口诀、菱形,各种图形,计算二元一次和三元一次方程组_7
循环嵌套 打印乘法口诀 for(int j=1;j<=9;j++){ for(int i=1;i<=j;i++){ System.out.print(i+"*"+j+& ...
- Java开发中经典的小实例-( 鸡蛋0.1元一个,鸭蛋3元一个,鹅蛋6元一个。求一百元买一百个蛋。)
public class Test24 { public static void main(String[] args) { // 鸡蛋0.1元一个,鸭蛋3元一个,鹅蛋6元一个.求 ...
- 算法导论(第三版) Exercises4.2(求最大和子数组的算法优化过程)
4.1-1 如所有元素都为负,则返回所有元素中最大的负数. 4.1-2(暴力法求最大和子数组) struct subarray { int start, end, sum; }; void brute ...
- XJTUOJ wmq的队伍(树状数组求 K 元逆序对)
题目链接:http://oj.xjtuacm.com/problem/14/[分析]二元的逆序对应该都会求,可以用树状数组.这个题要求K元,我们可以看成二元的.我们先从后往前求二元逆序对数, 然后对于 ...
- 求数组的子数组之和的最大值II
这次在求数组的子数组之和的最大值的条件下又增加了新的约束: 1.要求数组从文件读取. 2.如果输入的数组很大, 并且有很多大的数字, 就会产生比较大的结果 (考虑一下数的溢出), 请保 ...
- 【c语言】实现一个函数,求字符串的长度,不同意创建第三方变量
// 实现一个函数,求字符串的长度.不同意创建第三方变量. #include <stdio.h> #include <assert.h> int my_strlen_no(ch ...
随机推荐
- Requested a new session but one was in progress
作为appium初学者,估计很多人都会遇到这个错误.如何解决: 1.环境变量中去掉appium的安装路径,添加Appium\node_modules\.bin这个路径进去. 2.启动cmd 输入app ...
- rsync同步工具的配置与使用
一.什么是rsync?rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具. rsync官网 http://rsync.samba.org/ 二.rsync的工 ...
- 无法连接到localhost.其他信息:用户“sa”登录失败。(MicroSoft Sql Server,错误:18456)
18456错误: 在安装的时候如果选择的身份验证模式为:Window身份验证模式,就会出现18456的错误. 解决方案: 使用windows身份验证登录之后,在下面红框上单击右键,点击属性: 点击属性 ...
- Git两分钟指南-学习入门参考
Git两分钟指南 http://blog.jobbole.com/78999/ GIT和SVN之间的五个基本区别 http://www.oschina.net/news/12542/git-and-s ...
- Linux ulimit
一.简介 二.语法 三.其他 1)linux下进程的进程最大数.最大线程数.进程打开的文件数和ulimit命令修改硬件资源限制 http://blog.csdn.net/gatieme/art ...
- Vim完全教程
一.简介 世界上只有三种编辑器,EMACS.VIM和其它. 我们所处的时代是非常幸运的,有越来越多的编辑器,相对于古老的VIM和EMACS,它们被称为现代编辑器.我们来看看这两个古董有多大年纪了: ...
- android使用Pull解析来自服务器的xml文件时出现错误以及解决方案
直接上代码,代码中有详细注释: 1 public class CheckUpdateManager { 2 private static final String TAG = "CheckU ...
- C# mysql 插入数据,中文乱码
用C#操作mysql时, 插入数据中文都是乱码,只显示问号,数据库本身使用的是utf-8字符. 网上百度一下有两种解决办法: 一种是在执行语句前面设置,如:MySQLCommand mCommand ...
- javascript 高级程序设计 九
JS 面向对象的程序设计思想(1)深入理解JS对象 1.js的中没有OO语言中的'类'的概念.ECMAjs中把对象定义为:‘无序属性的集合,其属性可以包含基本值,对象或函数’. 2.ECMAScrip ...
- 简单使用DESeq做差异分析
简单使用DESeq做差异分析 Posted: 五月 06, 2017 Under: Transcriptomics By Kai no Comments DESeq这个R包主要针对count d ...