当前位置: 首页 > news >正文

企业网站建设 详细方案龙之外贸向导

企业网站建设 详细方案,龙之外贸向导,河源建设网站,平台建设包括什么目录 一、矩阵求逆的数学方法 1、伴随矩阵法 2、初等变换法 3、分块矩阵法 4、定义法 二、矩阵求逆C#代码 1、伴随矩阵法求指定3*3阶数矩阵的逆矩阵 #xff08;1#xff09;伴随矩阵数学方法 #xff08;2#xff09;代码 #xff08;3#xff09;计算 2、对…目录 一、矩阵求逆的数学方法 1、伴随矩阵法 2、初等变换法 3、分块矩阵法 4、定义法 二、矩阵求逆C#代码 1、伴随矩阵法求指定3*3阶数矩阵的逆矩阵 1伴随矩阵数学方法 2代码 3计算 2、对任意阶数矩阵求逆 1计算方法 2代码 3计算 4计算结果 三、工程下载连接 一、矩阵求逆的数学方法 1、伴随矩阵法 2、初等变换法 3、分块矩阵法 4、定义法 二、矩阵求逆C#代码 1、伴随矩阵法求指定3*3阶数矩阵的逆矩阵 1伴随矩阵数学方法 2代码 /// summary/// 计算3*3矩阵的逆矩阵/// /summary/// param nameinput输入的3*3矩阵/param/// returns计算得到的3*3逆矩阵/returnspublic static double[,] inv3(double[,] input){double[,] output new double[3, 3];//求出伴随矩阵output[0, 0] input[2, 2] * input[1, 1] - input[2, 1] * input[1, 2];output[0, 1] input[2, 1] * input[0, 2] - input[0, 1] * input[2, 2];output[0, 2] input[0, 1] * input[1, 2] - input[0, 2] * input[1, 1];output[1, 0] input[1, 2] * input[2, 0] - input[2, 2] * input[1, 0];output[1, 1] input[2, 2] * input[0, 0] - input[0, 2] * input[2, 0];output[1, 2] input[0, 2] * input[1, 0] - input[0, 0] * input[1, 2];output[2, 0] input[1, 0] * input[2, 1] - input[2, 0] * input[1, 1];output[2, 1] input[2, 0] * input[0, 1] - input[0, 0] * input[2, 1];output[2, 2] input[0, 0] * input[1, 1] - input[1, 0] * input[0, 1];//求出行列式的值double Avalue input[0, 0] * input[1, 1] * input[2, 2] input[0, 1] * input[1, 2] * input[2, 0] input[0, 2] * input[1, 0] * input[2, 1]- input[0, 2] * input[1, 1] * input[2, 0]- input[0, 1] * input[1, 0] * input[2, 2]- input[0, 0] * input[1, 2] * input[2, 1];//求出 逆矩阵 for (int i 0; i 3; i){for (int j 0; j 3; j){output[i, j] output[i, j] / Avalue;}}return output;} 3计算 计算代码 计算3*3矩阵的逆矩阵double[,] input new double[3, 3] {{ 0, 1, 3 }, { 1, -1, 0 },{-1, 2, 1}};double[,] out1 inv3(input); //方法1——只能求3*3 程序计算结果 对应数学题目 2、对任意阶数矩阵求逆 1计算方法 Step1 1利用初等行变换那么要将单位矩阵E和n阶矩阵B合并规定为EandB_normal[ n, 2 * n] Step2 2将EandB_normal[ n, 2 * n]转为右半部分为上三角的矩阵 这一步转换比较复杂一点具体实现就是 第一层循环循环变量 j 从第n列开始到第2 * n - 1列结束目的就是将该列值都转为1方便后边变为上三角矩阵需要注意的是对于第n列应该考虑把每个值都变为1但是到第n 1列时就不考虑第一个值了第n 2列时不考虑第一个和第二个值类推 第二层循环循环变量 i 从第j - n行开始到第n - 1行结束目的是对每一行都进行除以EandB_normal[ i, j]值的运算这样EandB_normal[ i, j]的值就变为了1需要注意的是如果EandB_normal[ i, j]的值为0的话我们考虑将该行与最后一行调换同时循环变量 i 到第n - 2行结束如果调换之后EandB_normal[ i, j]的值仍然为0那么再将该行与此时的最后一行调换类推但是如果一直调换直到发现始终为0就说明矩阵B不满秩退出计算如果EandB_normal[ i, j]值为负数该行同时变号 第三层循环循环变量 k 从第0列开始到第2 * n - 1列结束目的是将上一步中循环到的行中的每一个值都除以EandB_normal[ i, j]的值 循环全部完成之后矩阵EandB_normal[ n, 2 * n]就变成了右半部分为上三角的矩阵。 Step3 3接上一步将该矩阵转为右半部分为单位矩阵的矩阵此时即为矩阵B的逆矩阵与单位矩阵的合并规定为B_inverse_andE[ n, 2 * n] 这一步中的循环变量是递减的具体实现就是 第一层循环循环变量 j 从第2 * n - 1列开始到第n列结束目的是将该列值只保留一个1其余变为0 第二层循环循环变量 i 从第 j - n行开始到第0行结束 第三层循环循环变量 k 从第0列开始到第2 * n - 1列结束拿 j 2 * n - 1, i n - 1举例此时我们希望第n - 2行的值都加上该行最后一个值的相反数与第n - 1行乘积的对应值第n - 3行的值都加上该行最后一个值得相反数与第n - 1行乘积的对应值类推需要注意的是j 2 * n - 2时i从第n - 2行开始循环j 2 * n - 3时i从第n - 2行开始循环类推 当循环全部完成之后B_inverse_andE[ n, 2 * n]的右半部分就变为了单位矩阵左半部分为矩阵B的逆矩阵。 Step4 4接上一步将B的逆矩阵取出来规定为B_inverse[n, n] 2代码 /// summary/// 任意矩阵求逆。(矩阵是2*2、3*3、4*4、5*5等类型)/// /summary/// param namematrixB输入的初始矩阵/param/// param nameorderNum矩阵行和列的数/param/// returns计算出的逆矩阵/returnspublic static double[,] MatrixInverse(double[,] matrixB, int orderNum){//判断是否满秩bool IsFullRank true;//n为阶级int n orderNum;//####赋值####//矩阵B//矩阵B的逆矩阵//单位矩阵E和矩阵B组成的矩阵double[,] B_normal matrixB;double[,] B_inverse new double[n, n];double[,] EandB_normal new double[n, 2 * n];for (int i 0; i n; i){for (int j 0; j n; j){if (i j)EandB_normal[i, j] 1;elseEandB_normal[i, j] 0;}for (int k n; k 2 * n; k){EandB_normal[i, k] B_normal[i, k - n];}}//####计算####//中间变量数组用于临时盛装值double[] rowHaveZero new double[2 * n];//EB矩阵右边的n*n变为上三角矩阵for (int j n; j 2 * n; j){int firstRowN j - n;int lastRowN n;int colCount 2 * n;//把EB中索引为j的列的值化为1for (int i firstRowN; i lastRowN; i){//如果EBijNum值为0就把0所在的行与此刻最后一行调换位置//并且循环变量i的终止值减去1,直到EBijNum值不为0//最多调换到0所在的行的下一行double EBijNum EandB_normal[i, j];while (EBijNum 0 lastRowN i 1){for (int k 0; k colCount; k){rowHaveZero[k] EandB_normal[i, k];EandB_normal[i, k] EandB_normal[lastRowN - 1, k];EandB_normal[lastRowN - 1, k] rowHaveZero[k];}lastRowN - 1;EBijNum EandB_normal[i, j];}//如果while循环是由第二个判断跳出//即EBijNum始终为0if (EBijNum 0){//循环变量i的终止值再减去1然后跳出循环lastRowN - 1;break;}//如果为负数该行变号if (EBijNum 0){for (int k 0; k colCount; k){EandB_normal[i, k] (-1) * EandB_normal[i, k];}EBijNum EandB_normal[i, j];}//将该值变为1则其余值都除以EBijNumfor (int k 0; k colCount; k){EandB_normal[i, k] EandB_normal[i, k] / EBijNum;}}//自n列起每列只保留一个1呈阶梯状int secondRowN firstRowN 1;for (int i secondRowN; i lastRowN; i){for (int k 0; k colCount; k){EandB_normal[i, k] EandB_normal[i, k]- EandB_normal[firstRowN, k];}}if (lastRowN firstRowN){//矩阵不满秩IsFullRank false;break;}}//不满秩结束运算if (!IsFullRank){double[,] error new double[n, n];for (int i 0; i n; i){for (int j 0; j n; j){error[i, j] 0;}}//返还值均为0的矩阵return error;}//将上三角矩阵变为单位矩阵for (int j 2 * n - 1; j n; j--){//firstRowN为参考行//secondRowN为运算行int firstRowN j - n;int secondRowN firstRowN - 1;int colCount j 1;//从最后一列起每列只保留一个1其余减为0for (int i secondRowN; i -1; i--){double EBijNum EandB_normal[i, j];for (int k 0; k colCount; k){EandB_normal[i, k] EandB_normal[i, k]- EandB_normal[firstRowN, k] * EBijNum;}}}//####提取逆矩阵####for (int i 0; i n; i){for (int j 0; j n; j){B_inverse[i, j] EandB_normal[i, j];}}return B_inverse;}3计算 private void button1_Click(object sender, EventArgs e){计算3*3矩阵的逆矩阵double[,] input new double[3, 3] {{ 0, 1, 3 }, { 1, -1, 0 },{-1, 2, 1}};double[,] out1 inv3(input); //方法1——只能求3*3double[,] out2 MatrixInverse(input, 3); //方法2计算2*2矩阵的逆矩阵double[,] input2 new double[2, 2] {{ 1, 2 }, { 3, 4 }};double[,] out3 MatrixInverse(input2, 2); //计算4*4矩阵的逆矩阵double[,] input3 new double[4, 4] {{ 2, 1,-1,2 }, { 1, 1,1,-1 },{0,0,2,5},{0,0,1,3}};double[,] out4 MatrixInverse(input3, 4); } 4计算结果 以4*4矩阵说明 三、工程下载连接 https://download.csdn.net/download/panjinliang066333/89024543
http://www.pierceye.com/news/238960/

相关文章:

  • 郑州网站微信微博维护品牌网站建设流程图
  • 网站建站销售怎么做做门窗安装去哪些网站找生意
  • 太原建站司点击查看荆州网站开发
  • 个人音乐网站开发宁波网站推广工作室电话
  • 建设部网站 造价工程师wordpress忘了秘密
  • 如何分析一个网站建设策划案湖南网络推广公司大全
  • 惠州市建设工程交易中心网站如何制作网页导航栏
  • 保山网站建设哪家好做led视频好的网站
  • 如何利用网站策划做好网站建设申请域名要多少钱
  • 专业做公司logo的网站谷歌网站推广方案
  • 公司网站建设情况说明网站开发用php好吗
  • 网站做关键词库的作用空间怎么做网站
  • 制作网站公司名称网络营销与策划实践报告
  • 哈尔滨手机网站建设价格低长沙网业公司
  • 如皋网站建设公司网站推广优化排名
  • 行业网站方案网站搭建合同
  • 如何用ps做网站图标吉林省长春市建设局网站
  • 北京高端网站建设服务广州百度快速排名优化
  • 电子商务网站开发课程设计网站建设石家庄
  • 好的公司网站有什么用烟台建设集团招聘信息网站
  • 网站制作需要多长时间网站代建设费用
  • 淘宝客网站设计台州建设银行官方网站
  • 婚纱网站建设规划书2023全国企业公司大黄页
  • 网站seo的关键词排名怎么做的wordpress 在线留言
  • 建一个c2c网站要多少钱小程序云开发文档
  • asp网站合法上虞网站设计
  • 网站 用什么数据库蛋糕店网站建设方案
  • 网站上的动效是用ae做的网站开发实训小结
  • wordpress建站怎么上传网站没有备案信息该怎么做
  • 沈阳网站推广有什么技巧软件开发工具通常也称为什么工具