#include "iostream" using namespace std; class Matrix { private: double** A; //矩阵A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //为向量b分配空间并初始化为0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //为向量A分配空间并初始化为0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析构中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"请输入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"请输入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"个:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分别求得U,L的第一行与第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分别求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"计算U得:"<<endl; U.Disp(); cout<<"计算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
标签: 道理特分解法
上传时间: 2018-05-20
上传用户:Aa123456789
该ADC0831系列是8位逐次地址逻辑近似A/D转换器,具有串行I/O和可配置的输入多路复用器,最多8个通道。
标签: adc0832
上传时间: 2022-04-02
上传用户:
电力电子技术的发展使电机驱动系统摆脱了常规两电平逆变器拓扑的限制,电机驱动系统与多电平逆变器的结合成了新的思路。多电平逆变器的输出电平数多,因此其输出波形更好,在大容量交流调速系统中优势明显。作为多电平逆变器的研究基础,三电平逆变器应用最为广泛,而其中首选的是二极管钳位型三电平逆变器。因此采用二极管钳位型三电平逆变器驱动PMSM的模型预测控制系统作为研究对象。在PMSM驱动系统中,位置与转速的检测是非常重要的,一般采用的方法是通过机械传感器来进行测量,但这种测量方法在实际应用中有很多缺陷,会降低电机系统的稳定性和可靠性,同时会增加成本。而无速度传感器技术是通过检测电机中的电流或电压,来对电机的实际转速和位置信息进行估计,这种技术省略了常规使用的机械传感器,能够实现电机系统的高精度、高动态性能的控制。因此PMSM的无速度传感器控制技术成为了近些年的研究热点。主要研究内容分为以下几个方面:(1)基于同一Pl转速调节器,设计三电平逆变器驱动PMSM模型预测转矩控制系统,与两电平逆变器驱动PMSMMPTC系统对比,并对两个系统的运行性能进行对比分析。(2)为进一步提高系统响应性能,克服未知负载转矩扰动、增强系统鲁棒性,设计扩张状态负载转矩观测器,进而得到将负载转矩观测器和基于幂函数滑模转速调节器相结合的复合控制器。(3)设计基于分数阶滑模观测器的PMSMMPCC系统,实现对电机转速的快速准确估计。
上传时间: 2022-06-24
上传用户:xsr1983
内容简介 本书集资料性、知识性和实用性于一体,编写形式新颖,检索方便,针对性强,可使读者快速掌握设计要领,学以致用。对于每一种类型的集成电路,在介绍其特性、引脚功能的基础上,着重介绍其应用并给出了具体的应用实例。 本书共 七章。主要介绍了线性直流电压稳压电源(固定输出、可调节输出、多路多组输出等常规直流低压电源;电源输出电压从低1.2V到高至50V,电流大至20A的直流电源)、DC-DC变换直流电源、精密参考电压源/电流源、开关电源、充放电电路、LED驱动电源等。目前比较热门的LED照明产品的驱动电源,本书也用专门章节作了介绍。数码产品及计算机外设相关的直流电源如笔记本电脑电源、打印机电源等、充放电电路本书也作了较大篇幅的介绍。 本书不仅适合广大电子爱好者阅读,也可供电路设计等专业技术人员及相关专业师生参考。
上传时间: 2022-07-06
上传用户:bluedrops
低电压输入高电压输出的直流变换器被广泛地应用在太阳能光伏发电系统、风能发电系统、燃料电池系统、车载逆变器电源等电力电子装置中。随着电力电子技术的发展,对该类型的变换器也提出了更高的要求。 本文主要针对中小功率的升压变换器,对串联谐振软开关推挽电路进行了研究分析及实验。 文章首先对理想工作条件下的串联谐振软开关推挽电路进行理论、仿真分析,并通过实验验证了电路损耗小、效率高的特性。三种不同的控制方案:导通时间固定、关断时间变化的PFM调制方式,导通时间变化、关断时间固定的PFM调制方式,PWM调制方式,被分别应用到电路中。通过理论、仿真以及实验研究,比较分析了三种控制方案的优缺点,特别是对软开关特性、输出电压调节及适用范围等问题做了细致分析。文章还对应用在串联谐振软开关推挽电路中的变压器作了一定研究分析。根据变压器的机理,对该电路中特有变压器的高变比问题和漏感问题展开分析,并提出工艺和设计原理上的相应的解决方案。 为进一步实现能量的高效转换,提出了基于双变压器结构拓扑的串联谐振软开关推挽电路,并进行了有关理论分析、仿真和实验研究。同单变压器电路相比,该电路具有开关损耗小、变压器损耗小、效率更高的优点,实验结果充分验证了以上结论。
上传时间: 2013-04-24
上传用户:关外河山
开关电源具有体积小、重量轻、效率高、发热量低、性能稳定等优点,广泛应用于电子整机与设备中,在以往的AC-DC电路中,由二极管组成的不可控整流器与电力网相接,为在电网中会产生大量的电流谐波和无功功率而污染电网,使得功率因数较低。为了提高AC-DC电路输入端的功率因数,采用了功率因数校正。 本文采用TMS320F2812实现开关电源的功率因数校正,分析了DSP实现功率因数校正的控制方法和具体实现,对于软件中参数的标么值实现进行了理论推导,为了使输出功率在输入电压变化的一定范围内保持不变,采用了前馈电压,对于数字PI调节环采用了抑制积分饱和的方法,以防止系统失控。 论文中通过对AC-DC整流电路和加入Boost功率因数校正后的电路进行了Matlab的仿真,通过输入电压和输入电流波形的比较,可以很容易地看到功率因数的提高。 在具体的电路实现中,采用霍尔元件检测输入电感电流、输入电压和输出电压,经过DSP的A/D采样后,在DSP内部经过程序计算,输出PWM波形驱动MOSFET的开通与关断,使输入电感电流波形与输入电压波形一致。 本文实现了系统仿真,给出了仿真波形,分析了硬件设计电路并完成了电路的局部仿真,软件编程方面给出了主程序和各个子程序的软件流程图,提出了以后研究的方向。
上传时间: 2013-06-17
上传用户:baobao9437
随着当今生产力的发展和技术的进步,生产设备的自动化程度越来越高,传统的监控手段已不能满足生产自动化、智能化和网络化的需求。智能巡检终端作为生产安全的重要辅助设备,能在复杂环境下实现对多设备多信号量的实时采集和处理,可以作为解决生产设备安全运行的主要手段之一。近来年嵌入式技术以其强大的处理能力、高度的可靠性在微控制领域的应用越来越广泛。无线通信技术,特别是GPRS无线网络技术的快速发展。使互联网等宽带数据网络与无线通信网络实现互联,能够大大提高无线监控效率。在分析研究了当前国内、外设备巡检系统研究现状,并结合嵌入式技术和GPRS无线网络通讯技术的基础上,根据实际项目企业的具体生产要求,论文提出了一种基于GPRS无线通信技术与嵌入式技术的无线智能设备巡检系统。 本系统采用三星公司的ARM920TS3C2410芯片作为系统处理器,处理器从外部传感器采集到的相关数据,如:温度、湿度、压力等,通过SIM—300GRPS无线通讯模块的AT命令将数据通过无线网络传送到移动运营商GPRS网络中,然后将数据传送到生产监控中心(指定IP地址或域名)监控中心,监控中心可以通过专门软件对从各监控点传递的数据作出分析处理,并通过GPRS网络将相关控制命令反馈给各个监控点。 本课题主要工作集中在两个方面:一方面是GPRS无线收发设备硬件实现,在这一部分涉及到模块硬件功能设计、无线模块、嵌入式处理器的选型;另一方面是软件设计,给出了系统软件开发流程,完成了各模块的开发工作。研究和试验表明,该系统具有价格低廉、稳定可靠的特点,能满足远程无线数据传输的实际需求。
上传时间: 2013-06-01
上传用户:wxhwjf
近年来,嵌入式技术发展迅速,已经渗透到工业控制、智能设备以及电子消费品等人们日常生活的各个领域,而Internet技术也取得了巨大的发展,为人们所广为接受,于是嵌入式技术和Internet技术相结合形成的嵌入式Internet技术适时地出现了,并且成为实现远程控制、信息共享的关键技术。 本文首先阐述了课题研究的背景、目的和意义,以及嵌入式TCP/IP协议栈研究的现状,然后分析了嵌入式操作系统μ C/OS-Ⅱ的工作原理并描述了把它移植到LPC2210上的过程,为嵌入式TCP/IP协议栈实现提供了操作系统支持。接着,针对嵌入式协议栈的特殊需求,详细分析并采用了零拷贝技术、跨层技术等对LwIP协议栈进行了有效的裁剪和优化,结合μ C/PS-Ⅱ设计了一种紧凑的协议栈工作模型和内存管理机制。并且结合μ C/OS-Ⅱ设计了协议栈的工作模型和内存管理机制。在驱动程序的基础上实现了对LwIP中的IP协议、ARP协议、ICMP协议、UDP协议和TCP协议等几个协议栈的裁剪和优化。并分析了它们的安全漏洞及基于这些漏洞的攻击方式,在这个基础上提出了如攻击检测算法等填补漏洞和抵抗攻击的一些技术和措施。最后在目标板上成功移植了优化后的LwIP。 本文同时还设计了一种能够提供足够多软定时器资源的算法。在不需要操作系统支持的情况下,软定时器可以给多任务的系统提供足够的定时服务,而且不影响中断处理时间。并且具有自动回调功能,启动一次以后就可自动调用定时器。此软定时器使用方便且易移植,大大方便了本课题多次使用定时器的需要。课题结合具体项目“蓄电池状态记录仪的设计”,分析了它的各个功能模块,设计了其系统结构。对各个功能模块的设计与实现进行了代码编写和测试,借助于TFTP服务器实现了基于协议的嵌入式目标板和PC机间的网络通信。 本课题经过几个月的软硬件设计和现场测试,已实现了最初的设计目标。构建出了实验硬件平台和一个多任务多协议的基本实时系统框架。以后的开发者可以不必深入了解μ C/OS-Ⅱ实时操作系统和嵌入式TCP/IP协议栈的情况下就可以方便的创建一个嵌入式网络控制系统,并能在平台上开发其它的应用任务,为以后的研究提供了参考并奠定了基础。
上传时间: 2013-04-24
上传用户:www240697738
JPEG2000是由ISO/ITU-T组织下的IEC JTC1/SC29/WG1小组制定的下一代静止图像压缩标准.与JPEG(Joint Photographic Experts Group)相比,JPEG2000能够提供更好的数据压缩比,并且提供了一些JPEG所不具有的功能[1].JPEG2000具有的多种特性使得它具有广泛的应用前景.但是,JPEG2000是一个复杂编码系统,目前为止的软件实现方案的执行时间和所需的存储量较大,若想将JPEG2000应用于实际中,有着较大的困难,而用硬件电路实现JPEG2000或者其中的某些模块,必然能够减少JPEG200的执行时间,因而具有重要的意义.本文首先简单介绍了JPEG2000这一新的静止图像压缩标准,然后对算术编码的原理及实现算法进行了深入的研究,并重点探讨了JPEG2000中算术编码的硬件实现问题,给出了一种硬件最优化的算术编码实现方案.最后使用硬件描述语言(Very High Speed Integrated Circuit Hardware Description Language,VHDL)在寄存器传输级(Register Transfer Level,RTL描述了该硬件最优化的算术编码实现方案,并以Altera 20K200E FPGA为基础,在Active-HDL环境中进行了功能仿真,在Quartus Ⅱ集成开发环境下完成了综合以及后仿真,综合得到的最高工作时钟频率达45.81MHz.在相同的输入条件下,输出结果表明,本文设计的硬件算术编码器与实现JPEG2000的软件:Jasper[2]中的算术编码模块相比,处理时间缩短了30﹪左右.因而本文的研究对于JPEG2000应用于数字监控系统等实际应用有着重要的意义.
上传时间: 2013-05-16
上传用户:671145514
在工业生产中,二次自动化仪表是构成自动化系统的基本单元之一。我国的单元仪表己基本完成由电动Ⅲ型仪表向基于八位或十六位单片机为基础设计的数字化仪表的转换。由于常规单片机资源的限制,以单片机为基础设计的单元仪表基本上还是在功能上替代电动Ⅲ型仪表,并按电动Ⅲ型功能进行分类。这样造成国内自动化仪表生产厂家生产的二次数字化仪表品种繁杂,标准难以统一,设计随意性大。因此带来如下现实问题: 1.自动化系统设计单位的仪表选型、系统调试、使用中操作、维修和系统的功能优化及备件的准备非常的不方便: 2.仪表生产厂家的批量生产困难,产品质量的提高及成本的节约不利: 3.国内现在自动化仪表厂家数量众多,但都无法形成规模生产,质量不佳,而国外进口的二次仪表往往依附于特定的集散系统,也存在标准不统一,难以灵活替换的问题,且价格昂贵。 自动化系统设计、生产及应用迫切需要一种使用方便、通用性强的智能型二次仪表,以解决上述问题,改变传统设计、生产及应用方式,这将是未来自动化仪表的发展趋势,也就是本课题的努力方向。 本论文正是针对上述问题,以设计出一种可灵活组态的通用智能型二次仪表为研究对象,在深入分析国内主流仪表厂家的仪表操作方式和仪表功能的基础上,合理地进行软硬件设计,为在同一硬件平台下实现多种仪表的功能进行了创新性和探索性研究。主要内容为: 1.各种常规二次仪表功能、标准、接线、操作习惯及结构方式的归类分析; 2.多信号多量程的柔性测量方法研究; 3.系统整机设计以及系统可靠性设计; 4.u-boot的向ARM的移植、uClinux向ARM的移植、uClinux下的通用组态软件设计。 本文设计了一种以三星公司的ARM7TDMI系列处理器S3C44BOX为核心,辅以外围电路,实现同一硬件平台下多种仪表的功能,并成功制作了样品系统。 本文所讨论的基于$3C44BOX和uClinux的智能仪表系统的开发技术同样适用于其它项目的开发,对其它嵌入式的应用系统开发有重要的参考价值。
上传时间: 2013-05-16
上传用户:jjq719719