当前位置: 首页 > news >正文

Python数值计算(9)

继续接着前面多项式的操作来说。

4. 多项式的计算

除了进行值替换,多项式之间可以进行代数的基本运算,如加减乘除等,甚至还可以进行微分和积分等常见运算。

分别使用传统的运算法就可以了,唯一需要注意的是除法,应该使用//,而不是/,测试如下:

a=P([1,-2,0,3])
b=P([-2,1])
print(a-b) # 3.0 - 3.0·x + 0.0·x² + 3.0·x³
print(a+b) # -1.0 - 1.0·x + 0.0·x² + 3.0·x³
print(a*b) # -2.0 + 5.0·x - 2.0·x² - 6.0·x³ + 3.0·x⁴
print(a//b) # 10.0 + 6.0·x + 3.0·x²

通常两个多项式的除法不大可能刚好整除,因此,会有余项,计算余项很简单,使用%运算符,例如上例中:

print(a%b) # 21.0

由于b是一个一次式,因此余数为一个常数。

在需要同时获取商和余式的时,最好的做法是使用divmod函数:

quo, rem = divmod(a,b)

甚至还可以使用** 计算多项式的幂:

a=P([1,-2,0,3])
print(a*a)
print(a**2)
# both display: 1.0 - 4.0·x + 4.0·x² + 6.0·x³ - 12.0·x⁴ + 0.0·x⁵ + 9.0·x⁶

积分和微分,使用函数integ和deriv,积分和微分之后仍旧是一个多项式:

a=P([1,-2,0,3])
print(a.integ()) # 0.0 + 1.0·x - 1.0·x² + 0.0·x³ + 0.75·x⁴
print(a.deriv()) # -2.0 + 0.0·x + 9.0·x²

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
  • 【iOS】—— iOS持久化
  • 【Git】.gitignore全局配置与忽略匹配规则详解
  • 快速识别音频文件转成文字
  • 实战:安装ElasticSearch 和常用操作命令
  • C#中的异步编程:Task、Await 和 Async
  • Settings搜索系统SettingsIntelligence
  • 数说故事 | 大数据洞察宠物消费市场数据
  • java-静态工具类获取YAML配置文件中的值
  • Vue 模版编译原理
  • git fetch和 pull的区别
  • Java基本语法学习的案例练习
  • nginx续1:
  • 商家转账到零钱开通最快捷径
  • 为什么阿里开发手册不建议使用Date类?
  • Android Studio:GIT提交项目到远程仓库
  • HTTP--网络协议分层,http历史(二)
  • JavaScript HTML DOM
  • Javascript弹出层-初探
  • Linux链接文件
  • Lucene解析 - 基本概念
  • python 学习笔记 - Queue Pipes,进程间通讯
  • react 代码优化(一) ——事件处理
  • vue.js框架原理浅析
  • vue脚手架vue-cli
  • 前端_面试
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 数据科学 第 3 章 11 字符串处理
  • 我从编程教室毕业
  • 小试R空间处理新库sf
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • ​Python 3 新特性:类型注解
  • #define 用法
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (C++20) consteval立即函数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (Forward) Music Player: From UI Proposal to Code
  • (javascript)再说document.body.scrollTop的使用问题
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (一)项目实践-利用Appdesigner制作目标跟踪仿真软件
  • .NET 8.0 中有哪些新的变化?
  • .NET C# 使用 iText 生成PDF
  • .net 使用ajax控件后如何调用前端脚本
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • //解决validator验证插件多个name相同只验证第一的问题
  • @Valid和@NotNull字段校验使用
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • []AT 指令 收发短信和GPRS上网 SIM508/548
  • [8] CUDA之向量点乘和矩阵乘法
  • [Armbian] 部署Docker版Home Assistent,安装HACS并连接米家设备