我试图解决我的化学论文的微分方程,在那里我偶然发现了一个关于scipy的微分方程求解器“odeint”的问题 .

首先,我根据scipy网站上的示例,通过功能CIDNP_1实现差异(CIDNP是一种化学现象,解释了不寻常的变量) . 但解决方案即使是正确的方向也是如此 .

import numpy as np

import matplotlib.pyplot as plt

import scipy.integrate

R0 = 5e+5

kt = 5e5/R0

beta = 3/R0

def CIDNP_1(y, t):

dP_dt, dQ_dt = y

def R(t):

return R0/(1 + kt*R0*t)

dP_dt = -kt*dP_dt*R(t) - kt*beta*(R(t))**2

dQ_dt = +kt*dP_dt*R(t) + kt*beta*(R(t))**2

return [dP_dt, dQ_dt]

def CIDNP_2(y, t):

dP_dt, dQ_dt = y

def R(t):

return R0/(1 + kt*R0*t)

return [-kt*dP_dt*R(t) - kt*beta*(R(t))**2, \

+kt*dP_dt*R(t) + kt*beta*(R(t))**2]

y0 = [-1, +1]

t = np.linspace(1e-9, 100e-6, 1e3)

sol_1 = scipy.integrate.odeint(CIDNP_1, y0, t)

sol_2 = scipy.integrate.odeint(CIDNP_2, y0, t)

然后我将我的解决方案改为CIDNP_2,这给出了正确的结果,但在我看来,实现没有区别,因为变量dP_dt和dQ_dt在实现CIDNP_1中没有改变 .

因此,任何人都可以给我一个暗示,为什么实施CIDNP_1会给出错误的结果,我会非常幸运,因为至少在最后两个小时内并没有完全丢失 .

问候,

雅各布

java求二阶微积分方程特解_Scipy:实现微分方程的两种方法:两种不同的解决方案:回答...相关推荐

  1. 待定系数法求二阶常系数非齐次线性方程特解

    前往我的主页以获得更好的阅读体验 待定系数法求二阶常系数非齐次线性方程特解 - DearXuan的主页https://blog.dearxuan.com/2022/06/04/%E5%BE%85%E5 ...

  2. java 求导函数_在MATLAB中计算数值导数的最佳方法是什么?

    这些只是一些快速而肮脏的建议 . 希望有人会发现它们有用! 1. Do you have a symbolic function or a set of points? 如果您有符号功能,您可以分析计 ...

  3. java 求交集 算法_Java计算交集,差集,并集的方法示例

    Java计算交集,差集,并集的方法示例 发布时间:2020-10-07 10:37:46 来源:脚本之家 阅读:106 作者:benbenkui 本文实例讲述了Java计算交集,差集,并集的方法.分享 ...

  4. java 给对象创建实例_Java中创建(实例化)对象的五种方式

    Java中创建(实例化)对象的五种方式1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运用反 ...

  5. JAVA中初始化线程的两种方法_java中最简单的方式新起一个线程

    启动一个线程 在一个方法中启动一个线程,有两种方法 第一种是让类实现Runable接口,这样的话编译器就会提示你实现里面的未实现的方法(就是run方法) 第二种是,现在方法中new一个线程,然后直接调 ...

  6. 解析xml的几种方法,他们的原理,比较 以及JAVA源码

    第一种方法 对象模型 API 定义了层次化对象模型来表示 XML 文档.换句话说,对应 XML 语法中的每个概念定义相应的类:元素.属性.实体.文档.解析器读入 XML 文档的时候,建立 XML 语法 ...

  7. java中map嵌套map_java中遍历MAP,嵌套map的几种方法

    java中遍历MAP的几种方法 Map map=new HashMap(); map.put("username", "qq"); map.put(" ...

  8. java 当月最后一天_java中取得当月最后一天的四种方法

    java中取得当月最后一天的四种方法 第一种,使用Calendar的roll方法,在限制某个日期字段不改变的形式下,改变其他日期字段的值. 第二种,使用Calendar的getActualMaximu ...

  9. java多线程同步的四种方法_java中实现多线程的两种方法

    java多线程有几种实现方法,都是什么?同步有几种实java中多线程的实现方法有两种:1.直接继承thread类:2.实现runnable接口:同步的实现方法有五种:1.同步方法:2.同步代码块:3. ...

最新文章

  1. 表达式 控件 html,获取HTML表单控件的UrlEncode字符串表达式
  2. 初学git:用git bash往github push代码
  3. c语言sleep_编程代码:用C语言来实现下雪效果,这个冬天,雪花很美
  4. 技术内参 | 数据分析,如何解决精度丢失的问题?
  5. 基于glibc的程序在android上的移植
  6. webgl 封装和可使用开源方案
  7. 取消多次重定向错误php,Laravel重定向您太​​多次错误
  8. 阿里云ECS利用密钥对ssh登录服务器
  9. Ubuntu18.04LTS搭建nodejs环境和webStorm
  10. CSS 用户界面样式
  11. 搭建一个简单Git服务器
  12. SQL基本语句(整理)
  13. 《精通开关电源设计》笔记
  14. cad快捷栏怎么调出来_如何显示CAD的工具栏?CAD如何调出工具栏
  15. Phoenix创建Hbase二级索引_尚硅谷大数据培训
  16. uni-app开发微信公众号H5网页,用微信开发者工具调试公众号
  17. 毕业四年年薪200万是怎样的一种体验?
  18. 医学影像SCI发表攻略
  19. 微信分享服务器,微信分享的链接会被腾讯后台先访问
  20. 在win10基础上安装Ubuntu16.04双系统(双硬盘)

热门文章

  1. 城市动能转换_地理答啦:高速公路过境,省道国道穿城——济南北跨,建设新旧动能转换先行区应当关注的问题...
  2. java start launcher_hmcl启动失败
  3. 2021年甘肃省高考成绩一分一段表查询,2021年甘肃高考一分一段表公布查询时间 什么时候出...
  4. Java 算法 最大体积
  5. 解决centos下sudo运行tshark,写入文件显示:Permission denied.
  6. 解决python报错写入文件 io.UnsupportedOperation: not writable
  7. django解决借用Model使用数据库时报错 AttributeError: Manager isn‘t accessible via xxxxxModel instances
  8. 解决gensim报错AttributeError: type object ‘Word2Vec‘ has no attribute ‘load_word2vec_format‘
  9. 单片机modbus rtu通讯_Modbus-RTU通讯
  10. windows截图c语言,window 截取屏幕,并实现jpeg压缩