QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5992|回复: 0
打印 上一主题 下一主题

与哈佛教授Oliver Knill访谈实录

[复制链接]
字体大小: 正常 放大

18

主题

1

听众

234

积分

升级  67%

  • TA的每日心情
    开心
    2020-5-21 11:09
  • 签到天数: 24 天

    [LV.4]偶尔看看III

    自我介绍
    数和光的世界

    邮箱绑定达人

    跳转到指定楼层
    1#
    发表于 2020-3-19 21:26 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    上个月,哈佛大学Math 21a课程的学生上了一堂别开生面的Mathematica课程。Oliver Knill教授制作了一个3D动画版的"麦莉赛勒斯"(Miley Cyrus),随着她的歌曲《Wrecking Ball》节奏在一只大球上摇摆。当时的学生们正在准备期中复习,Knill用到的原理正是他班上学生在复习的同一个数学原理,他可能是有史以来最酷的教授。
    # n) q) _4 G6 c# N: i$ i
    我们看到动画后第一时间联系到了Knill教授,并很荣幸地获得他的同意接受我们的访谈。在下面的问答中,他向我们介绍了他如何使用Mathematica来进行编程和创造,以及如何为他的学生提供生动难忘的课程。
    2 j% H$ f8 l0 r3 ?
    问:奥利弗您好,非常感谢您能与我们分享使用Mathematica作为教学工具的经验。能否先自我介绍一下,以及您为什么想在课堂上使用Mathematica?
    4 ~; D4 M4 p& w. X2 M
    答:我在ETH(苏黎世联邦理工学院)读本科时,曾是一门课程的助理,这门课要用到计算机代数系统 Macsyma、REDUCE和Cayley(现为Magma)。我的导师是Roman Maeder,当时是ETH的教授,也是早期的Mathematica开发人员之一,还曾经写过几本关于Mathematica的书,现在是Wolfram公司的并行计算部的总监。作为研究生,我们可以使用早期版本的Mathematica,从那时起我一直使用它进行教学和研究。
    ; K; ^+ |) A- G' [- P6 N/ K
    刚开始在课堂上使用它,并不容易。1993年,我在Caltech(加州理工学院)的第一个教学岗位上,不得不每天扛着一台沉重的便携式笔记本电脑,并在高架投影仪上使用特殊设备来显示屏幕。现在,每个教室都配备了投影仪,并且使用科技手段进行辅助教学已成为常规。 Mathematica是一个很好的教学工具,因为它易于学习。没有编程背景的学生也可以快速上手。
    问:您最近使用Mathematica的教学示例给我们留下了深刻的印象,是什么促使您用这个方法,您是如何编写代码的呢?
    ( @8 M( ]# y! C0 f

    6 \1 Y# V9 w8 {" X/ Z
    答:Mathematica这样的语言可以快速生成图表。对于正在忙于期中复习的学生,我想给他们演示如何使用二次曲面来构建对象。由于程序的构建方式,一段动画只需三四个小时就能完成。每时每刻都有一个工作项目。

    : B- P. M8 J8 f. A4 b. s
    像Mathematica这样的高级编程语言的优点之一是开发迅速。这特别适用于开发教学动画。因此,在我教的这门多变量微积分课程中,为了说明二次曲面,我用几个曲面将Miley Cyrus的一段视频制成了动画。
    : h! N3 g0 P5 U* U$ j" f2 b
    麦莉赛勒斯的"Wrecking Ball"在Youtube上发布24小时内就突破了1230万次观看量,当然,大多数学生也都看过。顺便说一句,视频开始的艺术特写镜头显然受到其他音乐视频的启发,如Sinead O'Connor。
    % W, w! H5 l: ~# a) x
    言归正传,当然像POV-Ray这样的光线追踪器会产生更逼真的图像,但它需要的编程时间也更长。Mathematica做开发很快,因为可以使用易于制作动画的简单构建块来构建复杂的结构。以下代码是在几个小时内编写的,并且非常易读。无论是使用Mathematica进行科学实验还是插图或动画,我总是遵循一条原则,始终保留一个正在运行的原型。这使我能够在时间迫切的情况下也能完成一个作品。最初没有时间考虑眼泪和耳朵,现在用双曲抛物面和椭圆体加上了。
    ) {  m8 |8 v& K0 c6 S* c" m
    1 {; k. `, p+ v3 ~4 }
    01.jpg ) ^- H5 B7 e# m' |  v1 q
    ' p% w1 p4 b9 V! ?; }# N
    03.jpg 7 b- c( ~5 e8 y- P" w! P
    02.jpg ) u9 |5 ^$ z; @- X0 d) V1 d
    当然,代码可以不断简化和优化。虽然这需要花费时间,但长远来看可以节省时间。例如,可以看到ArcTan[Tan[t]]实现了锯齿功能。使用内置函数SawtoothWave[x]可以做得更优雅。! G: S0 `' b  k& `2 X

    8 o" Y. k$ S6 t+ _
    还可以看到如何访问图形对象,如ParametricPlot3D给出的曲面。例如"Ear"。要访问图形部分,比如缩放、平移或着色,使用Ear[[1]],然后在最后用Graphics3D将所有内容放在一起。

    ! {" A2 S: I: O# f, f2 ?9 P/ t/ ]
    设置全局选项也有助于简化代码。我不想在整个剪辑中使用任何网格特征,因此默认设置为False。
    问:您看起来非常擅长与学生沟通。你对其他老师和教育工作者使用Mathematica有什么建议吗?

    9 _0 z! y# M1 H3 \) k  S7 c) m& k( i
    答:我们在哈佛大学使用Mathematica有着悠久的传统。在我13年前来到这里时就已经使用了。拥有一种文化环境很重要,当然还要有一个站点许可证,以便学生和老师可以使用该软件。但同样重要的是不要过度使用任何技术。每个工具都有它的最佳点,发现它取决于个人以及设置。
    , }, v9 B& Y  I3 O. L% f! k3 Y) \
    与我正在教授的课程相比,Mathematica的课题比重很轻,并且一直用在创意方面,所以课题可以轻松地在几个小时内完成。但是,一个人必须能够投入时间。去年,我让学生们制作了3D打印的Mathematica对象。感谢Elson家庭艺术计划(Elson Family Arts Initiative)的资助,我们能够将其中一部分打印出来。

    % T: }1 z- ]. G4 e' e* }# E 5.jpg 1 d0 e. S) x5 a' k

    6 C0 J3 c2 B1 M% W) U% j' ~7 G1 _/ }) e0 O
    $ V% o, L/ w' l2 ?
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-1 02:08 , Processed in 2.184615 second(s), 53 queries .

    回顶部