出版时间:2012-12 出版社:人民邮电出版社 作者:宋叶志,徐导,何峰 编著 页数:453 字数:730000
Tag标签:无
内容概要
《C#科学计算讲义》较为详细地介绍了科学计算方法,并对算法给出了源代码。关于算法部分主要介绍了线性方程组的迭代解法与直接解法、正交变换与最小二乘计算方法、鲁棒估计、随机数的产生、插值法、非线性方程求解、多元非线性最优化算法、微分方程数值方法等内容。
本书还给出了C#程序设计的基本方法,并对科学计算中要用到的矩阵向量类的构造做了详细阐述。算法的实现本身不限于具体的语言,本书对于算法的描述是较为详细的,所以读者也很容易把算法改用Fortran、
MATLAB、C++、Java 等语言编程实现。
宋叶志、徐导和何峰编著的《C#科学计算讲义》适合作为大学理工科本科生或研究生计算方法、数值分析课程的教材或参考书。对于从事相关学科教学的教师,如果不熟悉现代编程语言,也可以选择本书作为工具书。本书还可以用作科研人员的工程计算工具书与算法集。另外,在一些需要进行数据处理与分析的公司,如数量金融、统计等行业,也可以选用本书作为培训教材,或直接应用书上的源代码进行软件开发。
作者简介
宋叶志,中国宇航学会会员、中国神经科学学会会员、中科院上海天文台助理研究员,从事航天器精密定轨、航天测量数据分析、应用数学、最优化理论等研究。作为主要负责人,主持过数项中型航天计算任务。编写了MATLAB、Fortran、C#等多种语言的数值算法程序库,有较为丰富的数值计算程序设计经验。
书籍目录
第1章 C#程序设计基础
1.1 计算机、程序设计与算法
1.1.1 计算机结构
1.1.2 操作系统
1.1.3 机器语言与高级语言
1.1.4 程序设计与算法
1.2 C#历史与概述
1.2.1 C语言:结构化编程语言的高峰
1.2.2 C++语言: 面向对象与大型程序
1.2.3 Java语言:可移植、安全性与Internet
1.2.4 C#: .NET主打语言
1.3 集成开发环境介绍
1.4 面向对象程序设计
1.4.1 封装
1.4.2 多态
1.4.3 继承
1.5 数据类型与运算符
1.5.1 简单数据类型
1.5.2 数组
1.5.3 运算符
1.5.4 赋值运算符
1.6 程序控制结构
1.6.1 顺序结构
1.6.2 分支结构
1.6.3 循环结构
1.6.4 控制结构的嵌套
1.7 类的设计及对象实现
1.7.1 定义类
1.7.2 创建对象
1.7.3 方法
1.7.4 构造函数
1.7.5 析构函数与垃圾回收
1.8 运算符重载及索引器
1.8.1 运算符重载
1.8.2 索引器
1.8.3 面向对象思想在C#程序设计中的重要性
1.9 GUI编程
1.10 本章小结
第2章 线性方程组迭代解法
第3章 线性方程组的直接解法
第4章 正交变换与最小二乘计算方法
第5章 鲁棒估计
第6章 随机数
第7章 插值法
第8章 非线性方程数值解法
第9章 非线性最优化
第10章 常微分方程(组)的数值方法
附录A C# 数值代数类的抽象与设计
附录B 动态链接库与混合编程
B.1 静态链接库与动态链接库
B.2 C#调用Fortran动态链接库范例
B.3 调用可执行函数
附录C Linux下C#开发与跨平台编程介绍
C.1 Mono简介
C.2 Linux下C#IDE开发范例
参考文献
章节摘录
版权页: 插图:
媒体关注与评论
我以前只用过Fortran、Matlab、C进行编程,但有时也会遇到需要使用面向对象语言的情况。C#语言的特点是:继承了C和C++的优点,精心地面向对象,语言精炼,使用方便,具有很高的灵活性和兼容性。本书为C#语言在数值计算中的使用提供了大量例子程序,包含了数值计算中出现的常用算法,无论是对C#或是数值计算的使用者来说都十分实用。诚如作者所言:“编写这样一套算法库完全没有商业价值,但作者认为这是有意义的事情。一方面自己的工作中需要用到不同的算法,同时作者把这些算法系统整理,满足初学者的学习需求。”我想,这句话也概括了本书的价值。——清华大学数学科学系 贺茜君很多做工程数理研究的人都会觉得,将Matlab数值计算代码改写成面向对象语言的过程十分痛苦繁琐,却又不得不做。本书作者独具慧心,为我们解决这个问题悉心铺设了一条阳关大道。所谓授之以鱼不如授之以渔,书中充分利用了C#的强大功能,详细分析了一些经典数值计算的C#实现方法,并且源代码注释详细,便于理解及根据自己需求改写,让我们能够学习数值计算方法的同时掌握一门语言来实现它!这本书简明扼要,书中例子可以让我们边学边干,看起来不但毫不费力,反而像是一种享受。——浙江大学光电信息工程学系 金晓荣对于一名工科研究生来说,我一方面使用Fortran、Matlab进行数值计算研究,一方面又要为商用程序开发用户界面,如何将面向对象概念与稳定高效的数值计算结合在一起是一个很具有挑战性的问题。本书在解决这方面问题上发挥了巨大的作用,对于数值计算中的很多常用算法都给予了算法实现。本书深入浅出,不仅从实际应用的角度为读者提供算法上的参考,而且也在字里行间、代码细节中启发了读者的思考。无论你是C#语言使用者,还是数值计算程序的开发人员,本书的使用都是大有裨益的!——西安交通大学核科学与技术系 张乾本书介绍了C#程序设计的基础知识,并且对科学计算中的一些基本内容,如线性方程组的求解方法、最小二乘问题、鲁棒估计、非线性方程求解、非线性最优化问题和常微分方程数值解等做了介绍。本书偏重于算法,并且对每一种算法都给出了具体的程序代码。部分程序已经被应用在一些工程实践中。千里之行始于足下,希望这本书能引导读者走上科学计算的道路上来。——复旦大学信息与计算科学系 杨卫红
编辑推荐
系统、全面、深入,囊括目前常用的科学计算方法所有方法给出算法分析及代码实现,读者可以从光盘中直接获得代码采用LaTex排版,版面清爽作者在线答疑互动
名人推荐
我以前只用过Fortran、Matlab、C进行编程,但有时也会遇到需要使用面向对象语言的情况。C#语言的特点是:继承了C和C++的优点,精心地面向对象,语言精炼,使用方便,具有很高的灵活性和兼容性。本书为C#语言在数值计算中的使用提供了大量示例程序,包含了数值计算中出现的常用算法,无论是对C#或是数值计算的使用者来说都十分实用。诚如作者所言: “编写这样一套算法库完全没有商业价值,但作者认为这是有意义的事情。一方面自己的工作中需要用到不同的算法,另一方面对这些算法进行系统整理又可以满足轫学者的虚席需求。”我想,这句话也概括了本书的价值。 ——清华大学数学科学系 贺茜君 很多做工程数理研究的人都会觉得,将Matlab数值计算代码改写成面向对象语言的过程十分痛苦和繁琐,却又不得不做。本书作者独具慧心,为我们解决这个问题悉心铺设了一条阳关大道。所谓授之以鱼不如授之以渔,书中充分利用了C#的强大功能,详细分析了一些经典数值计算的C#实现方法,并且源代码注释详细,便于理解及根据自己需求改写,让我们能够在学习数值计算方法的同时掌握一门语言来实现它!这本书简明扼要,书中例子可以让我们边学边千,看起来不但毫不费力,反而像是一种事受。 ——浙江大学光电信息工程学系 金晓荣 对于一名工科研究生来说,我一方面使用Fortran、Matlab进行数值计算研究,一方面又要为商用程序开发用户界面,如何将面向对象概念与稳定高效的数值计算结合在一起是一个很具有挑战性的问题。本书在解决这方面问题上发挥了巨大的作用,对于数值计算中的很多常用算法都给予了算法实现。本书深入浅出,不仅从实际应用韵角度为读者提供算法上的参考,而且也在字里行间、代码细节中启发读者思考。无论你是C#语言使用者,还是数值计算程序的开发人员,使用本书都会大有裨益的! ——西安交通大学核科学与技术系 张乾 本书介绍了C#程序世纪的基础知识,并且对科学计算中的一基本内容,入线性方程组的求解方法、最小二乘问题、鲁棒估计、非线性方程求解、非线性最优化问题和常微分方程数值解等做了介绍。本书偏重于算法,并且对每一种算法都给出了具体的代码。部分程序已经被应用在一工程实践中。千里之行始于足下,希望这本书能引导读者走上科学计法的道路。 ——复大学信息与计算科学系 杨卫红
图书封面
图书标签Tags
无
评论、评分、阅读与下载