GAMS用户指南
GAMS 经典教材内容提要GAMS软件是建立和求解大型数学规划问题的优秀软件包之一,在各领域有着广泛的应用。本书是GAMS软件用户指南,全书分两篇,第一篇为 Windows gAMs2.50用户指南,详细地介绍了GAMS语言的各个组成部分,并对一些高级主题进行了专门讨论;第二篇讨论几个常用的求解器,包括 BARON、 Cplex10、 DICOPT、 MINOS、MOSEK、PATH4.6、SBB、 MPSGE书是建立和求解大型数学规划问题的高级计算机软件参考手册,可供各領域从事规划设计和管理的人员參考使用,也可作为高等院校师生的参考工具书在版编目(CIP)数据GAMS用户指南/魏传江等编译.一北京:中国水利水电出版社,2009.11(通用建模软件技术丛书)I.①G…Ⅱ.①魏…Ⅲ.①数学模型一建立模型应用软件,GAM一指南Ⅳ.①022-39中国版本图书馆CIP数据核字(2009)第208573号书名|用速椰软件技术外书作者魏传江王浩谢新民孙秀芬等编译出版发行中国水利水电出版社北京市海淀区玉渊潭南路1号D座100038)网址:www.waterpub.com.cnE-mailsales@waterpub.com.cn电话:(010)68367658(营销中心)经售北京科水图书销售中心(零售)电话:(010)88383994,6320264全国各地新华书店和相关出版物销售网点中国水利水电出版社做机排版中心田刷北京市兴怀印刷厂规格184mm×260m16开本32.25印张765千字版次2009年11月第1版2009年11月第I次印刷定价9800元凡购买我杜图书,如有缺页、倒页、胱页的,本社营铺中心负责调撓版权所有·侵权必究GAMS用户指南〉编译校人员名单主要编译校人员魏传江王浩谢新民孙秀芬参加编译校人员(按章节顺序)杨舒媛俞烜郝春沣苟思陈宁叶勇李云鶴郭海丹高辉孙笑微王成丽王志璋柴福鑫张海涛李玉科杨丽丽前言数学世界是对物理世界的抽象。物理世界是个大千世界,包括声、光热、电、机槭等。尽管物理规律各异、物理现象千差万别,但是物理世界有三类最基本的关系:一是物理量之间的逻輯关系;二是物理量的量值;三是物理量的量值的动态依存关系。GAMS( General Algebraic Modeling System)即通用数学模型系统,是世界银行与美国GAMS公司在20世纪90年代初开发的一种旨在建立和求解大型复杂数学规划问题的高级计算机软件。作为GAMS语言则对应着这些物理量、这些最基本的关系、这些数学描述以及物理量的量值之间的逻辑关系AMS语言提出了集合的描述工具,用集合来表示物理量之间的逻辑关系。对于物理量的量值,GAMS语言分已知值和未知值进行处理,已知值用参数来表示,未知值用变量来表示。对于物理量之间的动态依存关系,GAMS语言用方程来表示。在这三种基本的表示下,首先定义物理量之间的逻辑关系,在逻辑关系的基础上定义物理量的量值或者变量的上下界,在集合和变量的基础上定义方程,在方程的基础上定义目标函数和约東条件,在目标函数和约束条件的基础上定义模型,在模型的基础上定义模型库,在模型库的基础上定义决策攴持系统,这样就完成了整个数学描述的任务。因此,GAMS软件不仅是一个数学工具,更是一个逻辑分析工具,对于理清思雏、进行系统分析,都是非常得力的工具与其他计算机语言相比,GAMS语言更加面向分析解决综合问题的计算机用户。由于它能够用一种用户和计算机都易读懂的语言来描述现实世界中精确的数学问题,因而可以灵活有效地建立各种类型的模型,进行多种数学优化问题的计算,极大地扩展了数学规划在策略研究和决策分析领域里的应用。用户只需要使用简单的GAMS语句,便可建立各种线性规划、非线性规划、混合整数规划、混合整数非线性规划、二次约束规划等问题的数学模型然后由GAMS系统运行求解。GAMS是专门为线性、非线性、混合整数等优化问题而设计的,在大型复杂问题中表现得更为突出。GAMS语言在形式上和通常使用的程序语言相似,饪何有编程经验的人都会觉得热悉且易上手。它具有很强的灵活性和通用性,可以简便安全地改变模型中的细节,允许模型的描述不依赖解题的算法,因为GAMS的设计把关系数据库的思想与数学规划巧妙地结合起来,并且将这个思想融入模型的总体设计,问題的最优解可以表示为不依赖于其使用的数据形式。GAMS软件也是建立和求解水资源配置模型的优秀软件包,通过二次开发可构建水资源配置模型和基于运筹学原理的其他水利模型,这为开发拥有自主知识产权的模型软件提供了技术平台。GAMS软件是基础软件,使用周期长、应用范围广、灵活方便是其主要优点。我国水资源严重短缺,水资源供需矛盾突出,与水有关的生态环境问题严重,长期以来非常重视水资源的开发利用与保护,尤其是在水资源配置理论研究和应用方面保持了一定的优势,取得了一系列重要成果。开发基于优化技术的水资源配置模型,首先要对水资源系统、经济系统、生态系统进行概化,建立它们之间的逻辑关系,然后将水文长系列数据、各类需求以及各种参数作为模型的輪入项。另外,水资源配置方案的求解是多目标问題,需要一个能够较好地解决上述计算问题的数学规划软件包作为支持。GAMS软件正是解决水资源问题的理想软件工具之一。GAMS语言没有专门的编輯器,用户可以自选编輯器。任何一个GAMS程序都由集合、数据、模型、求解和报告5个部分构成。GAMS不断地在原来基础上进行更新和提高,从早期的DOS版本已经发展至 Windows版本Windows GAMS2.50是为 Windows平台(95/98/ME和NT/2K/XP)设计的基于综合开发环境的界面,它可以在个人计算机、工作站、大型计算机上运行。本书分为两篇。第一篇为 Windows GAMS2.50用户指南,第1章是概述;第2章是一个独立的指南,通过一个小的运输模型例子进行详细的指导;第3~17章构成了第一部分的主干,有序地介绍了GAMS语言的各个组成部分,并伴随着一些详细的例子,即那些经常从模型库调出的例子;附录A~K是对高级主题的专门讨论第二篇讨论几个常用的求解器,即 BARON、 Cplex10、 DICOPT、MINOS、 MOSEK、PATH4.6、SBB、 MPSGE求解器。主要描述的选项为:用于控制求解器;GAMS求解器如何分析这些选项;如何分析求解器返回的模型和求解器状态代码。 BARON(分枝减小最优化导航)是整体求解非线性(NLP)和混合整数非线性规划( MINLP)的GAMS求解程序; Cplex优化求解器的设计理念是在最少的用户介入下快速求解大型的复杂问题,针对线性次约束混合整教规划问题,提供访问(合法授权的) Cplex的求解算法DICOPT是一个求解混合整数非线性规划( MINLP)问题的程序,涉及到线性二进制变量、整数变量和线性、非线性连续变量; MINOS是一个通用的非线性规划求解程序; MOSEK是求解线性、混合整数线性、二次、混合整数二次、二次约柬和凸非线性数学优化问题的软件包;PATH求解非线性问题,通过互补性把组合方法增加到经典的非线性方程组,能扩大建模的适用范围;SBB是求解混合整数非线性规划( MINLP)模型的新的GAMS求解器,它基于著名的混合整数线性规划标准的分枝定界法(B8B)和一些GAMS支持的标准NLP求解器的组合; MPSGE是GAMS数学规划语言的子系统,它是一个函数库和便于AGE模型表达和分析的雅可比计算程序本书由水利部“948”计划项目“通用数学模型系统( WindOws GAMs2.50)”(合同编号200701)、国家科技攴撑计划项目“流域/区域水资源全要素优化配置关键技术研究”(2007BAB28B02)、国家水体污染控制与治理科技重大专项“辽河流域水质水量优化调配技术及示范研究课题”(2008ZX07208010)资助。本书的顺利完成与项目组翻译人员的共同努力是分不开的,在此对参加翻译的所有工作人员表示真诫的感谢由于译者水平有限,难免会有疏忽或错误,在此恳请诸位专家、读者批评指正。译者2009年9月于北京目录第一篇 Windows GAMS2.50用户指南1概述1.1开发研究GAMS的动因1.2GAMS的基本特征1.2.1一般原理1.2.2文件33334412.3可移植性…1,2.4用户界面…1.2.5模型库1.3本书的组成2GAMS指南……2.1简介62.2GAMS模型的结构……集合2.4数据2.4.1列表数据输入890012.4.2表格数据输入2.4,3直接赋值数据输入2.5变量2.6方程2.6.1方程声明2.6.2GAMS求和(和求积)符号2.6.3方程定义7目标函数2.8模型和求解语句…2.9显示语句……………2.10‘.lo,,l,,up,,m’数据库2.10.1变量的边界和初值的赋值2.10.2最优值的转换和显示2.11GAMS输出2.11.1返回输出…8gg22.11.2错误信息2.11.3引用映射2.11.4方程列表2.11.5模型统计2.11.6状态报告…2.11.7求解报告3GAMS程序3.1简介3.2GAMS程序的结构2.1GAMS输入的格式32.2GAMS语句的分类3.2.3GAMS程序的组织3.3数据类型和定义3.4语言条目9993033233.4.1字符3.4.2保留字3.4.3标识符3.4.4标签3.4.5文本3.4.6数字33353.4.8注释集合定义4.1简介4.2简单集合4.2.1语法4.2.2集合名称4.2.3集合元素4.2.4关联的文本4.2.5集合元素的顺序33377883304.2.6多重集合的声明4.3 alias语句:集合的多重命名4.4子集和范围检查4.5多维集合……4.5.1一对一映射4.5.2多对多映射………4.6小结5数据输入:参数、标量和表格5.1简介5.2标量5.22实例5.3参数5.3.1语法5.3.2实例5.3.3更高维数的参数数据…5.4表格5,4.1语法5.4.2实例5.4.3连续表格5.4.4二维以上的表格5.4,5压缩表格54.6处理长行标签……495.5缩写5.1语法5,5.2实例506带参数的数据处理1简介6.2赋值语句6.2.1 scalar赋值6.2.2带索引赋值…6.2.3显式标签赋值…6.2.4子集赋值6.2.5控制索引问题526,2.6赋值中的扩展范围标识符6.2.7赋值中的缩写6.3表达式6,3.1标准的算术操作符
- 2020-12-04下载
- 积分:1
Matlab_Simulink动力学系统建模与仿真
《Matlab/Simulink动力学系统建模与仿真(第2版)》主要介绍了动力学系统中微分方程模型、传递函数模型和状态空间模型等建立的基础理论,并引入了Simulink仿真技术,为解决复杂动力学问题(特别是不易得到解析解的动力学问题)提供了方法。 《Matlab/Simulink动力学系统建模与仿真(第2版)》编排了较多的例题来说明各类动力学模型的仿真模型的建立方法,以及差分模型、相似模型、时域和频域等仿真模型,最后将控制动力学基础知识作为后继研究的扩展内容做了介绍。 《Matlab/Simulink动力学系统建模与仿真(第2版)》是一本多学科内容相交又的教材,同时涉及了力学、电学和动内容简介本书主要介绍了动力学系统中微分方程模型、传递函数模型和状态空间模型等建立的基础理论,并引入了 Simulink仿真技术,为解决复杂动力学问题(特别是不易得到解析解的动力学问题)提供了方法。书中编排了较多的例题来说明各类动力学模型的仿真模型的建立方法,以及差分模型、相似模型、时域和频域等仿真模型,最后将控制动力学基础知识作为后继硏究的扩展内容做了介绍。本书是一本多学科内容相交叉的教材,同时涉及了力学、电学和动力学控制等学科的交叉知识。本书适合具有一定数学和力学基础知识的理工科专业的本科高年级学生使用,可以作为机械工程、土木工程、车辆工程和仪器仪表、印刷机械等本科高年级学生和相关专业的研究生在学习有关动力学系统建模与仿真内容时的参考书,还可供相关工程技术人员参考。图书在版编目(CIP)数据Matlab/ Simulink动力学系统建模与仿真/黎明安,钱利编著.-2版.一北京:国防工业出版社,2015.7ISBN978-7-118-102055L.①M..Ⅱ.①黎.②钱..Ⅲ.①计算机辅助计算—应用—动力系统一系统建模②计算机辅助计算一应用—动力系统一系统仿真Ⅳ.①TP391.75②019中国版本图书馆CP数据核字(2015)第138118号※宫原社出版发行(北京市海淀区紫竹院南路23号邮政编码100048)天利华印刷装订有限公司印刷新华书店经售开本787×10921/16印张19字数456千字2015年7月第2版第1次印刷印数1—3000册定价49.00元(本书如有印装错误,我社负责调换)国防书店:(010)8854077发行邮购:(010)88540776发行传真:(010)88540755发行业务:(010)88540717前言本书是在为“工程力学”本科专业开设的“动态系统建模与计算机仿真”课程基础上多次改编而成的。本书一开始就采用了模型框图,使学生在学习过程中掌握和使用仿真框图的表示方法,为今后建立仿真模型奠定基础。本书结合了 Simulink仿真平台的基础知识,学生可以在各章的例题中学会 Matlab基本的编程能力和 Simulink基本模块的应用;将 Simulink的基础知识分散到各个章节中由浅入深地讲授,使学习者容易接受。本书第1版于2012年出版,此次在第1版的基础上修改了部分错误,个别习题也做了调整,使内容编排更趋于合理。全书分为10章,第1章~第3章介绍了建模与仿真的数学力学基础知识和以框图来表示模型的方法,主要以微分方程模型为主线介绍了简单仿真模型的建立。第4章介绍了系统的传递函数模型以及面对传递函数的仿真模型的建立。第5章介绍了状态空间模型。第6章介绍了基于采样的将连续系统离散化的方法。第7章介绍了机电相似模型。第8章介绍了动力学系统的时域瞬态响应分析方法。第9章介绍了频域分析方法。第10章介绍了控制动力学基础。全书贯穿了 Matlab/ Simulink仿真技术。本书中的仿真例题均在 Matlab(R2007a)下调试通过,希望读者在该版本下建立仿真模型本书由西安理工大学师俊平教授、王忠民教授审阅,两位教授对本书内容的编写提出了宝贵的修改意见,研究生雷霜、崔凯和朱晓雄等对初稿进行了认真的校对,在此表示衷心感谢。西北工业大学支希哲教授、朱西平教授,空军工程大学冯立富教授,陕西理学院张宝中教授,西安科技大学郭志勇教授,西安理工大学徐开亮博士等在编写过程中给予了大力帮助,在此表示深切感谢由于水平有限,本书还有很多需要改进的地方,敬请使用者提出宝贵意见。编著者Ⅲ目录绪论…………………………………………………………………………1第1章系统建模与仿真基础…………1.1系统仿真模型框图表示法·4441.1.1基本仿真元件………1.1.2简单仿真框图结构51.2拉普拉斯变换…1.2.1拉普拉斯变换的定义及其性质1.2.2拉普拉斯逆变换………………………………111.2.3拉普拉斯变换在求解线性常系数微分方程中的应用1.3z变换与Z逆变换…161.3.1Z变换的定义1.3.2Z变换的应用…171.4矩阵的特征值与特征矢量…181.4.1标准特征值问题…191.4.2广义特征值问题1.4.3相似变换及其特性…………………………………………21习题5第2章动力学系统的微分方程模型………………………………………282.1动力学建模基本理论…………………………………………………282.1.1动力学系统基本元件…282.1.2动力学建模基本定理…………………………292.2哈密顿动力学建模体系382.2.1拉格朗日方程2.2.2哈密顿原理2.3一维弹性体的有限元建模………422.3.1梁单元质量矩阵与刚度矩阵…422.3.2总体系统动力学微分方程………………………………442.4一维弹性体系统的假设模态法482.4.1模态函数……………………………………………482.4.2系统的动能和势能…………………492.4.3系统的动力学方程2.5 Simulink高级积分器的仿真模型建立…512.5.1高级积分器端口………522.5.2高级积分器在仿真中的应用…………………………52习题………………………………………………………………………………………54第3章动力学系统响应分析的数值方法……583.1数值积分法和数值微分法…583.1.1数值积分法………………………………………………………………583.1.2数值微分法……593.1.3多自由度振动系统的差商模型…………………………………633.2龙格一库塔法……653.2.1二阶龙格一库塔法………653.2.2四阶龙格一库塔法……………………………………………663.3四阶龙格一库塔法仿真程序设计673.3.1求解一阶微分方程四阶龙格一库塔法程序设计……………………673.3.2求解一阶微分方程组的四阶的龙格一库塔法程序设计693.3.3高阶微分方程的四阶龙格一库塔法程序设计703.4隐式逐步积分法…………………………………………………723.4.1线性加速度法723.4.2威尔逊θ法…3.5微分方程的边值问题的求解…………………763.5.1解线性方程边值问题的差分方法……………………………………763.5.2解线性方程边值问题的打靶法(试射法)…773.5.3关于三对角矩阵的追赶法程序设计……·,,,,,,,,,,,,.,,,,……793.6关于 Simulink环境中的求解器 Solver803.6.1常用求解器…………………………………………803.6.2求解器的选择813.7Malb中符号微积分……………823.7.1符号微分与符号积分……………………………………823.7.2利用符号运算求解微分方程习题……………………………………………………………………884第4章系统传递函数模型84.1传递函数及其特性…4.1.1传递函数定义……………884.1.2传递函数的特性…4.1.3传递函数的图示方法…894.2基本环节的传递函数……………………894.2.1比例环节……………………904.2.2一阶延迟环节4.2.3微分环节914.2.4积分环节…………914.2.5振荡环节………………914.3传递函数的其他形式934.3.1传递函数的零极点形式……………………………………………934.3.2传递函数的留数形式…………………………………………934.3.3传递函数的串联、并联与反馈连接形式944.3.4控制系统的开环传递函数……………………………………974.4多自由度振动系统的传递函数模型……………1014.4.1直接方法,..,.,,...,,,,,,.,·,,,,,,,,,..,·.、,,,,,,,,,,,,··,1014.4.2模态分析法…1035传递函数模型的 Simulink仿真模型建立…………………1054.5.1与传递函数相关的 Matlab运算指令…1054.5.2传递函数模型的 Simulink仿真模型建立…1084.6弹性系统的传递函数仿真模型…1114.6.1弹性系统的传递函数1114.6.2传递函数 Simulink仿真模型………………………………………………112习题113第5章动力学系统状态空间模型1175.1动力学系统的状态空间模型………………1175.1.1状态空间方程的一般形式1175.1.2化高阶微分方程为状态方程——不含输入导数情况……………………1185.1.3线性多自由度振动系统的状态空间模型1215.2微分方程模型与状态空间的关系1235.2.1微分方程模型与状态空间模型特征对的关系……………………1235.2.2系统含有输入导数的状态空间模型1235.3状态空间的相似变换…………………………………………1295.3.1一般情况…1295.3.2特殊情况(可控标准型的情况)…………………1305.4系统的状态空间模型与传递函数模型之间的转换……1315.4.1从状态空间模型转换为传递函数模型……………………1315.4.2模型转换 Matlab函数1325.4.3传递函数模型转换为状态空间模型的直接方法∴……1345.5传递函数模型转换为状态空间模型的串并联法…1355.5.1并联模型法,.,,,,,,,,,,,,,,,1355.5.2串联模型法1385.6状态空间仿真模型建立………………………………………1415.6.1非线性时变系统1415.6.2非线性定常系统……………………………………1425.6.3线性时变系统∴…………1425.6.4线性定常系统……………425.7关于混合系统仿真……………………144习题…∴∴…145第6章连续系统的相似离散法1486.1线性连续系统相似离散法…1486.1.1连续系统状态方程的精确解…486.1.2零阶保持器下状态方程的离散化…1496.1.3一阶保持器下状态方程的离散….,.,,.,,,,.,,,,,·,,,,,,,,,1506.1.4离散系统仿真模块1516.2状态转移矩阵…1526.2.1状态转移矩阵的特性1526.2.2求转移矩阵的几种方法…1536.3离散化系统的传递函数模型…………………1546.3.1零阶保持器的传递函数1546.3.2一阶保持器的传递函数…1546.3.3离散系统的传递函数模型1566.4线性时变系统状态方程的离散化………………………1586.4.1线性时变状态方程的解……………………1586.4.2线性时变系统状态方程离散化…………………1596.4.3近似离散化1596.5离散系统仿真模型建立…………………………1636.5.1有关离散系统 Matlab函数的应用1636.5.2状态方程的离散——基于单位延迟的状态空间仿真模型1666.5.3利用离散传递函数模块的 Simulink仿真模型……∴1686.5.4使用离散状态空间模块 Simulink仿真模型168习题……………………………………………………………………………170第7章机电模拟系统………………………………………1737.1电学基本元件和基本定律1737.1.1电学基本元件……1737.1.2简单电路动态方程1747.1.3电气系统的数学模型建立…………………………………………1747.2无源滤波器……………1787.2.1滤波器基本类型1787.2.2无源RC滤波器……………………………………………………………………………1857.2.3无源RLC滤波器………………………………………………………1867.3机电相似系统1867.3.1力一电压相似……………………………………………………………………187Ⅶ7.3.2力一电流相似…1887.4机电耦合系统的数学建模∴…1897.5运算放大器系统的数学建模∴……………190习题………196第8章系统瞬态响应分析………2008.1典型状态和典型激励的瞬态响应…2008.1.1系统响应种类…2008.1.2常见的几种典型外激励……………2018.2一阶系统的瞬态响应分析·……………………………………………………2028.2.1系统在零输入响应……………………2028.2.2系统零状态响应…………………………………………………2028.2.3标准一阶系统的单位阶跃响应特性……………2048.3二阶系统瞬态响应分析…………………………2068.3.1标准二阶系统的单位脉冲响应………………2068.3.2欠阻尼标准二阶系统的阶跃响应2098.3.3欠阻尼标准二阶系统性能指标…2108.3.4非标准欠阻尼标准二阶系统性能指标…∴…2148.3.5欠阻尼二阶系统的单位斜坡响应………………………………2178.3.6过阻尼二阶系统的单位阶跃响应………………………2188.4 Matlab/ Simulink仿真…………………………………………………………2208.5高阶系统的响应2218.5.1高阶系统的传递函数……………………………………2218.5.2高阶系统的瞬态响应222习题……………………………………………………………………………222第9章动力学系统频域分析方法………………………………………………2269.1概述……………………………………………2269.2频率响应函数…2269.2.1谐和激励下系统的响应函数…………………………………………2269.2.2系统的传递函数与系统的频率响应函数………………………2279.2.3系统频率响应特性曲线(频响曲线)……………………2309.3单位脉冲函数与频率响应函数.·······:··:.·.·········;···;··:.:··2329.3.1单位脉冲响应函数(权函数)…………………2329.3.2单位脉冲函数与频率响应函数…………………………………2339.3.3标准二阶系统的频率响应特性……·.···········2359.4频率响应分析法仿真……23794.1连续系统频率响应特性:,···:,,2379.4.2线性多自由度系统的频域分析2459.4.3快速傅里叶变换与仿真……………………………246Ⅷ9.5频率响应特性在振动系统参数识别中的应用……2489.5.1幅频、相频曲线识别法…………2499.5.2实频、虚频曲线识别法2509.5.3导纳圆的参数识别法…………………252习题………………254第10章动力学系统控制基础…25610.1动力学控制的基本概念…25610.2PID控制系统…………………25710.2.1PID工作简介…25710.2.2PID的数学模型…………25810.2.3PID控制系统的响应分析…25910.3状态反馈控制系统··..···.···:········.···········:······…………27010.4最优控制………………………27410.4.1固定端点的问题最优控制…………………………………27510.4.2始端时刻固定、末值状态自由情况下的最优控制27610.5线性系统的二次型最优设计…………279习题………………………………………………………………………285附录………………………………………………………288附录1 Simulink仿真系统常用模块库288附录2典型函数的拉普拉斯变换和Z变换…………………………………………290附录3 Matlab/ Simulink部分功能设置…………29参考文献…292Ⅸ
- 2020-12-04下载
- 积分:1