Python科学计算基础(罗奇鸣) 2023春 2022秋 2022春 2021秋  课程号:CS151504
2023春 2022秋 2022春 2021秋  课程号:CS151504
9.0(4人评价)
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
选课类别:通识 教学类型:理论实验课
课程类别:核心通识 开课单位:计算机科学与技术系
课程层次:通修 学分:2.5
课程主页:暂无(如果你知道,劳烦告诉我们!)
简介 最后更新:

Python是一种简单易学且功能强大的计算机程序设计语言。
本课程讲授编写Python程序解决数学、物理、生物和金融等科学领域中问题的方法。
课程的重点是解决问题的思维过程,包括问题定义、分析、设计程序和测试程序。
预修课程包括单变量微积分和线性代数。

点评 写点评
排序 学期

评分 评分 4条点评

lightmain 2022秋
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:中等
  • 作业:很少
  • 给分:一般
  • 收获:一般

还没出分,出了分再来修改评价。现在的分数仅考虑除了给分以外的课程内容。

这个课程属于公选课,内容是纯理科的。

#### 时间安排和考勤

上课是每周二的下午1到2节;第三节是实验课,其实第三节基本上就是老师坐在上课教室里答疑,如果你没有疑问可以第二节课下了就直接走。前两节课是要求到的,而且你得至少不时地听一点课,因为老师会用程序随机抽人回答问题。

#### 课程内容

最前面的三个月(9到11月)是老师讲课,先讲解python的基本语法(顺序分支循环,列表元组集合字典,函数,类,错误处理,文件读写),然后开始介绍科学计算领域最常用的4个库:numpy, sympy, scipy, matplotlib。(最后一个是画图用的)老师还会介绍一些常用的算法,比如数值求解常微分方程、代数方程,统计计算,插值,数值积分,最优化等。还介绍了一些关于程序优化、测量程序效率的知识。最后的一个月(12月)课堂交给学生讲解自己的大作业。每个人都必须讲解。

#### 作业

一共有十次作业,前九节课每节课一个作业,最后一个作业拖得很晚,基本上ddl在期末考试之前。每个作业是写3个左右的程序,每个程序根据我的经验大约30到50行,所有知识点都可以在教材的讲解和示例代码中找到,耗时是平均每次作业2小时左右。最重要的是最后的大作业,就是要你一个人写一个Python科学计算的大项目,要求是至少50行代码,要写报告,要有参考文献。有关大作业老师的评分倾向我在后面说。

#### 课堂

老师上课就是读教材。教材是他自己写的(这个学期刚写的,老师一边写一边上课,每次上课前都会把更新了最新内容的教材用邮件发给我们),教材的水平相当不错,结构清晰、简明易懂、配图和示例代码充分,所以他上课即使只是读教材也能让人听着稍微有点东西。只是确实无聊,语气之类的很平淡,让人难以专注;而且教材的电子版老师是会发的,让我觉得没有什么听课的必要,听课只是为了防止老师点名回答问题。

#### 大作业

大作业的诸多要求很是奇怪,让人怀疑老师自己使用的电脑是不是20年前的。他要求学生提交的报告必须以html格式提交,包括配图在内不能超过1MB(以降低邮件系统压力)。本学期期末因为疫情原因不得不提前放假,本来老师是要学生提交一份讲解视频录屏,后来居然改成了提交一份录音加上报告,报告加上录音不能超过10MB。

另外,大作业如果在倒数第二次讲解或者之前提交给老师并在倒数第二次或者之前讲解(也就是不要拖到最终ddl),有一定加分。具体加多少老师一直没说。

关于大作业内容,“Python科学计算领域的任意课题”可能让人摸不着头脑。老师会在学期中间发给同学们一些往届的优秀作业(十几个同学的,从大一到大四的都有),让同学们对于这个内容产生一定的印象。我分析了一下这些优秀作业:

大四:

  1. 高能物理

大三:

  1. 热力学与统计物理

  2. 深度学习解决反物质探测问题

  3. 仿真薄膜生长

  4. 仿真传热

  5. 仿真光电子

大二:

  1. 近地磁场模拟(似乎就是楼下多分贝声学同志的)

  2. 氢原子波函数可视化

  3. 旅行商问题

  4. 氢原子波函数可视化

大一:

  1. 无限大网格电阻计算(物理竞赛)

  2. 线性拟合等的可视化

  3. 追逃模拟

除了大一以外基本上全都是对物理问题的仿真模拟

另外,从提前放假之前的几次课堂项目展示中老师的反应可以看出,老师比较偏好于配图比较丰富、能够反映项目核心内容的报告(配图指的是曲线图等等这种反映数据的图,不是照片等插图),能够讲清楚自己的创新点的报告。

总体来说,我还是学到了一些有关科学计算的东西,而且最后的大作业也相当锻炼人。有相当一部分同学搞了人工智能的东西,我觉得我还是太菜了就没搞。

#### 其他

老师不建群。我去问老师的时候他说要群的话可以由我们自己建群。于是我们这个学期同学们就自己拉了一个群。老师发通知都是通过邮件,要多注意查收邮件。

按照老师发的邮件来说,这个学期的优秀率应该是给满了的,因为他发了个邮件说有很多本来可以给A-的因为优秀率限制只能给到B+。参考下面的三个同学的描述,这大概是真的了。

 

 

(最后修改于 1 1 复制链接
AliceShimada其实线性拟合可视化意图并不在此,他的真实作用是作为简单的命令行包装来帮我写大雾报告hh

立即登录,说说你的看法

多分贝声学 2022秋
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:很多

从零开始学没有问题,只要大一学过c,懂得怎么码代码就能轻松学。

老师自己编写了一份讲义,内容不少,上课就是念一遍讲义,可能会有些拓展(不知道,反正我没听),总之结合讲义和CSDN应该能解决所有问题。

每节课下课前抽签点名,实验课用来做讲义里的题目,不过不做也没关系。

期末要求做一个小项目,做啥都行。我做的是地球磁场的模拟,但是上台讲的时候因为太紧张没有讲一点关于代码的东西。在那么多大佬做什么爬虫,什么神经网络,什么机器学习的情况下,我做这个看起来挺逊的,但还是给了4(所以只要认真做了应该成绩不会差),感谢罗老师。

 

 

0 0 复制链接
ARin 2021秋
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:很多

老师人很好,是那种很想教会学生的老师,但我看老师其他课评分不是很高,所以来捞一下老师。

上课:老师上课是读自己的ppt,ppt说实话不好看,是那种绿底黑字黄框的样式,看久了很疲劳。ppt内容很全,对于python初学者来说比较有帮助。读ppt则比较让人犯困,因为python的基础内容和大一学c一样,很无聊,所以班上经常缺很多人。前两节上课,第三节自己问问题。到第三节课,基本上就10人以内。每次课前老师都会邮件群发上课ppt,给大家看个例子 /uploads/files/340756c602b7456b7c423d5a90a8147094fc8bf1.rar。从下学期开始,应该会有课程群。

考核:没有点名,期中,小测和期末。最后考核是报告,报告分四堂课进行,前三次报告有加分。报告是自己选择python科学计算有关,具体要求见:/uploads/files/92a9a986d4e61ab5563a2112f2a553230d0200cd.txt。我选择的是用python验证一个经济上的猜想,当时花了一个周末加一天,上台时有点紧张。

给分:老师给分很好,因为没有其他考核,应该完全看大作业。我的大作业虽然创新性有,但是总感觉技术方面不是很难,只有数据收集,数据处理,最小二乘拟合以及验证多重共线性异方差自相关这些。最后老师还是给了4。

总之,老师是认真负责的,还会提醒有些同学不要迟到,讲课读ppt确实有些无聊,建议那些喜欢活泼课堂氛围的同学不用来选。希望学一点知识,又不用太累,不喜欢期末,喜欢水学分的同学很建议来,轻轻松松水2.5个学分。

0 5 复制链接
老衲法号乱来是每个人都要大作业展示吗
ARin回复 @老衲法号乱来: 是的,每个人都要做自己,然后每个人上台
V同学,请问可以要一份课件吗
ARin回复 @V: 放到百度网盘了,链接:https://pan.baidu.com/s/12O0yPd27J9LAxUsVuGCRaQ 提取码:k7nv。以后课件可能跟这个不完全一样
呜呜呜回复 @ARin: 同学你好,网盘失效了,能再发一次吗?谢谢。请问该课适合新手学吗?老师会给做的一般的同学超低分吗?

立即登录,说说你的看法

Taffy 2022春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:很多

一教的计算机课,懂得都懂。。

 

课程基本上就是从科学计算出发,教我们用python。无平时作业,考核就期末一个大作业,用python求解科学计算问题,代码大于50行就行,然后和老师预约,最后几节课老师会让我们上台展示。没学过python、平时啥也不学问题不大,期末写大作业的时候突击就行(python真的很友好)。

 

我期末做了一个应用数学相关的科学计算问题,实际代码也就150多行,用的也是简单的语句,调了通用的numpy\scipy库,说实话就看代码没啥含金量(我看老师ppt上还有什么双线程、Cython之类的玩意)。但我自己看论文、查资料花了很大的劲,所以写期末大作业大概花了我10天时间。

 

也许是程序说明写的比较认真,给了个A,很吃惊。可以说是给分很好了。这门课大四选的很多,很多人代码也就50多行,所以拿到高分相对容易;但也有一些人把实验室的东西搬到这里,太恐怖了捏~( ̄▽ ̄)~*

 

老师上课就是念ppt,不点名。课前会把ppt通过邮件发给我们。不留情面地说,老师念ppt水平是我在科大见过最差的,以至于上了两三节课我就翘课了。但很奇怪,老师人是蛮好的,看上去不是那种纯“混”或懒于教学的,课下、课上会积极与我们沟通交流。也许老师只是单纯的念ppt水平差吧,反正我实在是没想明白。。

 

总结,省事+给分好。如果你已经会python,花个几天时间可以收获优质的2.5学分;如果不会python,只要合理安排期末时间(大概提前一个半月老师会布置大作业要求),通过大作业学个python的简单的应用,也是很好的。S类公选课!

(最后修改于 0 0 复制链接

罗奇鸣

教师主页: 暂无

其他老师的「Python科学计算基础」课

罗奇鸣老师的其他课

C++ 6.7 (6) 2018春 2017春...
Java软件开发基础 6.5 (8) 2022春 2021秋...
C++ 3.0 (2) 2020春 2019春...
数据结构与数据库 3.5 (4) 2017春 2016春...