数值计算
2020-06-08安燕
安燕
项目设计依据
本案例内容来自教育科学出版社出版的《信息技术必修1: 数据与计算》第4单元“计算与问题解决”第2节“数值计算”。本节是计算数学的主要部分和关键环节,对数学模型的理论、算法和软件实现研究求解,是后续学习的铺垫,更是引领。本节学习程序设计,但并非让学生编写所有代码,而是读懂程序,会编写核心代码,让其了解程序设计的基本概念和方法。
针对这节内容,2017版课程标准要求学生了解利用计算机解决数学问题的必要性,知道编程计算的强大优势。掌握Python语言的基本知识,能实现简单算法,体验程序设计的基本流程,感受算法的优势并能编程解决问题。
项目教学目标
通过前面单元学习及数学课函数绘制学习,学生对算法和流程图已有深入认识,具备相关知识储备。高一学生有一定的知识迁移能力和研究能力,当面对程序设计语言时,利用软件的相通性,程序调试和运行操作比较容易上手,但在创新意识上较为欠缺。
基于课程标准要求和内容、学情分析,设定本项目教学目标为:①感受数据的图形化表示。②学会利用Python语言设计解析式或迭代方程进行数值计算,解决问题。③了解数值类算法在实际问题解决时的应用及常用方法。
教学重点是计算机解决数值类问题的常用的解析法和迭代法,难点是理解迭代法的含义,并能用迭代法解决问题。
项目概述
教材内容偏重于纯数学问题的解决,相对枯燥,为避免学生产生厌倦和畏难情绪,教学设计以问题串引导、半开放活动链自主学习为支撑、开放性项目探究的策略进行。结合当下新冠病毒疫情期间大量防疫物资生产都用到数控机床,必然用到编程加工,而刺绣机床的工作原理与计算机描点绘制图像很类似,以此作为生活问题与学习内容的切入点,设定“心随疫动驰援标记设计”的生活化学习项目。
项目实施设置笛卡尔“爱心函数”“蝴蝶曲线”“多边形视觉图”“爱心词云”等学习活动,激发学生学习动力和积极性,提高实践创新能力和信息再生能力,培养学生核心素养。本节按教学内容共分为2课时,教学设计供2课时使用。
项目教学准备
硬件环境:网络机房;学习工具:Anaconda3, Python3.6(安装numpy、matplotlib、turtle、Wordcloud、jieba等模块);项目资源:PPT课件、FTP服务器(发布学案、Python半成品程序及相关素材)。
项目实施流程(如下页图1)
项目教学过程
1.项目引入
活动方式:图片展示、问题引导、学生交流讨论。
知识技能:获取、分析信息,形成驰援意愿和主题。
设计意图:以亲历事件创设情境,易于激起共鸣。设计驰援标记→生产厂家→数控机床→编程加工→学习内容,此暗联关系为整节课做铺垫,使后续内容环环相扣。
活动1:带着问题观看视频。
知识技能:自主构建学习需求。①机床需要人工每步骤同步指导操作吗?是什么控制机床自动精准生产?②想要刺绣机床生产驰援标记图案,需要做些什么?
设计意图:视频将生活问题与学习内容联系起来,理解编程不仅可以解决数学计算问题,还可以解决生活问题。
2.项目分析
活动2:描述数学函数绘图过程,知识经验迁移。
知识技能:计算机绘制函数图像的一般过程。①由点到线形成的图的绘图过程是怎样的?②学过的哪些软件能描点绘制函数图?绘图过程是怎样的?
实践要求:打开WPS表格文件,补全半成品,生成y=sin(x)正弦函数图像。
比一比:WPS表格与手动纸质绘制正弦函数图各自特点。
设计意图:回顾数学绘函数图的过程,通过知识迁移,类比得出计算机绘制函数图像的一般过程。
活动3:类比分析——选择合适的数字化工具。
知识技能:Python程序numpy和matplotlib模块使用方法;编程绘制函数图像一般过程和解决问题的方法。
实践要求:①改一改:若每隔1°或每隔0.1°取x值,WPS表格数据将会怎样?②比一比:WPS表格绘制的函数图与提供的编程绘制的函数图有何不同?为什么?
设计意图:通过修改x取值公差,体验WPS在大量数值计算时的弊端,与编程绘制的函数图比较,直观感受编程绘图的巨大优势,从而学会如何选择合适的数字化工具解决问题。同时引出Python程序软件的简介、绘图所需numpy和matplotlib模块基本用法。
3.项目实施
活动4:自主体验——归纳编程绘图一般过程。
实践要求:①打开y=sin(x)的正弦函数.py,根据注释语句理解代码含义,补全代码并调试运行,试着修改适当参数,观察函数曲线变化。②与同学交流探讨:若呈现课本上三条正弦函数曲线,应该在哪里修改代码?③若想呈现三条余弦曲线应如何修改代码?
说一说:尝试描述编程绘制正弦函数的过程。
设计意图:在了解numpy和matplotlib模块基本用法的基础上,从一条正弦函数曲线到三条正弦函数曲线,再到三条余弦函数曲线,由浅入深,分解难点,便于学生自主探究。修改参数观察曲线变化,意在触发学生的创新意识。引导学生归纳编程绘图的一般过程。
活动5:自主体验——爱心曲线、蝴蝶曲线调试运行。
知识技能:学習编程解决问题的一般方法。
引导:知道了计算机编程绘图的一般过程之后,如何绘制表达心意的驰援标记呢?知道笛卡尔爱心函数吗?了解背后的感人故事吗?
实践要求:①打开爱心函数.py,观察并调试运行,找出与直角坐标系函数图像的代码哪里不同?该代码作用是什么?②打开蝴蝶曲线.py调试运行,需要修改哪些参数才能出现样张图案?③思考:如何实现样张中“心花怒放”效果?