课程概述
一图胜千言,无图无真相。对于很多科学和工程问题,三维可交互的表达将是分析和深入理解问题的重要步骤,也是数据最好的可视化方式,科学计算揭示真理,一起来让真理更加立体吧!
本课程面向科学和工程背景的编程学习者,讲解利用Python语言对科学计算数据进行表达和三维可视化展示的技术和方法,帮助学习者掌握利用三维效果表达科学和工程数据的能力。
本课程介绍Python计算生态中最优秀的科学计算分析和三维可视化技术,三维可视化在理学、工程、医学等学科领域应用极其广泛,包括必修内容和选修内容两部分。
必修内容包括:
(1)Python第三方库TVTK,讲解科学计算三维表达和可视化的基本概念;
(2)Python第三方库Mayavi2,讲解科学计算三维表达和可视化的使用方法;
(3)Python第三方库TraitUI,讲解交互式科学计算三维效果应用的开发方法。
选修内容介绍:
(1)初步介绍科学计算中常用拟合、优化、统计、线性代数、数值分析等方法;
(2)Python第三方库SciPy,初步介绍最强大的科学计算工具箱。
该课程希望传递“理解和运用计算生态,培养集成创新思维”的理念,重点培养学习者运用当代最优秀第三方专业资源,快速分析和解决问题的能力。
“人生苦短,不要刀耕火种”,嵩老师教你直面问题和需求,用最好的工具解决它!
证书要求
本课程采取百分制,客观题和主观编程题各占50分。60分-79分可获得合格证书,80分以上可获得优秀证书,满分者将获得嵩老师的额外神秘大礼。
预备知识
本课程需要学习者具备Python语言编程的基本知识和初步技能,建议Python零基础学习者先修嵩老师的“Python语言程序设计”课程。具体地,学习者需要预先掌握Python的数字类型、字符串类型、分支、循环、函数、列表类型、字典类型、文件和第三方库使用等概念和编程方法。
本课程需要学习者掌握第三方库Numpy的基本使用,建议先修嵩老师的“”Python数据分析与展示”专题课程。
授课大纲
根据第三方库内容特点,课程共分8个内容模块和1个实战模块:
模块1:科学计算可视化及第一个三维展示实例(利用Mayavi绘制心形隐函数曲面)
模块2:TVTK库介绍、流水线模型、数据加载
模块3:Mayavi2库介绍和入门基础,使用mlab绘制三维网格面效果
模块4:使用mlab绘制三维标量场和矢量场效果
模块5:TraitUI库的基本使用和交互式三维可视化应用开发
模块6(实战):实战项目1
模块7(选修):SciPy库的介绍和拟合与统计运算
模块8(选修):SciPy库的线性代数、积分和插值等运算
参考资料
Python集成开发环境(IDE)
[1] Anaconda: https://www.continuum.io/ (推荐)
[2] IDLE: Python解释器默认工具
[3] PyCharm:http://www.jetbrains.com/pycharm/
参考教程
[1] Python零基础入门教程:《Python语言程序设计基础(第2版)》,嵩天等著,高等教育出版社
[2] 本专题教程:无
参考网站
[1] Python Mayavi2: http://docs.enthought.com/mayavi/mayavi/
[2] Python TVTK: http://code.enthought.com/projects/mayavi/
常见问题
Q1:除了Python,这个课程需要其他编程语言基础吗?
A1:
不需要,但需要学习者掌握NumPy库的基本使用,建议先修嵩老师的“Python数据分析与展示”专题课程,或者请学习专题内提供的自学资料。
Q2:Python 2.x和Python 3.x,这个课程采用哪个版本?
A2:
Python 3.x已经足够成熟,这是Python语言的现在和未来,嵩老师所有Python课程都采用Python 3.x系列版本。
Q3:在线开放课程看不到老师,有问题谁来解答?
A3:
为了更好服务同学们,本课程教师和多名助教会每天在线答疑,尽快解决与课程相关的各类问题。
Q4:课程里面除了视频有什么新的形式吗?
A4:
大学老师都是一本正经的,但你见过大学老师闲扯吗?课间,嵩老师想说说不一样的话...