求解受限于给出非负解的时滞微分方程 (DDE) 系统

2024-02-09

在 MATLAB 中,ode45 http://www.mathworks.com/help/techdoc/ref/ode45.html有一个参数叫做NonNegative http://www.mathworks.com/help/techdoc/ref/odeset.html#f92-1016858这将解决方案限制为非负。他们甚至写了一篇关于这种方法如何运作的论文 http://www.sciencedirect.com/science/article/pii/S0096300304009683以及它如何不像每当 y_i 变为负数时将 y_i 设置为 0 那么愚蠢,因为这通常不起作用。

现在,MATLAB也有dde23 http://www.mathworks.com/help/techdoc/ref/dde23.html用于求解时滞微分方程,但没有等价的NonNegative该积分器的参数。

不幸的是,我的任务是向现有的 ODE 系统添加延迟,该系统可以使用以下方法解决ode45 http://www.mathworks.com/help/techdoc/ref/ode45.html with NonNegative http://www.mathworks.com/help/techdoc/ref/odeset.html#f92-1016858已启用。

有什么想法我应该如何进行?

EDIT:

我不确定这是否有帮助,但是......

我系统的 DDE 部分基本上如下所示:

 dx = 1/(1+y*z) - x;
 dy = (y*z)^2/(1+(y*z)^2) - y;
 dz = X - z;

where X(第三个方程中的大写字母变量)是延迟版本x。然后,我通过在方程中添加几个项,将此 DDE 系统链接到现有(和更大的)ODE 系统x and z,然后将组合系统集成在一起。


您遇到了一个棘手的问题,我不确定是否有一步解决方案。我很乐意为任何愿意提供替代答案的人提供荣誉。

根据延迟的长度,一种选择是多次运行方程,每次迭代将 x 的旧值传递到最新更新。

例如,假设您的延误时间为一小时。在第一个小时内,运行带有 NonNegative 标记的 ode45。将值与时间参数一起存储到新矩阵中,然后再次运行算法。这次请确保添加两个输入参数:旧的解矩阵和旧的时间矩阵

dx = 1/(1+y*z) - x; 
dy = (y*z)^2/(1+(y*z)^2) - y;
tindex = find(told>t,1) -1 % find the upper index which best approximates t
X = xold(tindex) + (xold(tindex+1)-xold(tindex))*(t-told(tindex))/(told(tindex+1)-told(tindex)) % or interpolation method of your choosing
dz = X - z;

现在清洗、漂洗,然后重复。请注意,X 现在是一个准时间相关项,如示例 3 所示ode45 http://www.mathworks.com/help/techdoc/ref/ode45.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

求解受限于给出非负解的时滞微分方程 (DDE) 系统 的相关文章

  • 调整添加的绘制组件的大小和奇怪的摆动行为

    这个问题困扰了我好几天 我正在制作一个特殊的绘画程序 我制作了一个 JPanel 并添加了使用 Paint 方法绘制的自定义 jComponent 问题是 每当我调整窗口大小时 所有添加的组件都会 消失 或者只是不绘制 因此我最终会得到一个
  • 在 RESTful Web 服务中实现注销

    我正在开发一个需要注销服务的移动应用程序 登录服务是通过数据库验证来完成的 现在我陷入了注销状态 退一步 您没有提供有关如何在应用程序中执行身份验证的详细信息 并且很难猜测您在做什么 但是 需要注意的是 在 REST 应用程序中 不能有会话
  • Antlr 解析器运算符优先级

    考虑以下语法 我对运算符优先级有疑问 例如 res 2 a b有一个类似的解析树res 2 a b 我知道问题出在哪里 但我没有想到没有相互左递归的 漂亮 解决方案 你能帮我一点忙吗 该语法与自定义访问者一起使用 grammar Math
  • 带有 Maven Wrapper 的 Java 17 导致无法识别的 VM 选项“MaxPermSize=512m”

    I use OpenJDK 17 https jdk java net 17 使用 Maven Wrapper 3 8 2 从春季初始化 https start spring io Maven项目 JAR打包 Java 17 Spring
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容
  • MySQL 查询计算上个月

    我想计算上个月的订单总额 我收到了从当前日期获取当月数据的查询 SELECT SUM goods total AS Total Amount FROM orders WHERE order placed date gt date sub c
  • 类型或命名空间“MyNamespace”不存在等

    我有通常的类型或命名空间名称不存在错误 除了我引用了程序集 using 语句没有显示为不正确 并且我引用的类是公共的 事实上 我在不同的解决方案中引用并使用相同的程序集来执行相同的操作 并且效果很好 顺便说一句 这是VS2010 有人有什么
  • Pandas 与 Numpy 数据帧

    看这几行代码 df2 df copy df2 1 df 1 df 1 values 1 df2 ix 0 0 我们的教练说我们需要使用 values属性来访问底层的 numpy 数组 否则我们的代码将无法工作 我知道 pandas Data
  • php 数组中出现意外的 json 输出结构

    我正在尝试转换动态数据 如何从 PHP 获取此 JSON JSON 122240cb 253c 4046 adcd ae81266709a6 item 0 3 这就是我所做的 但它不起作用 PHP json array 122240cb 2
  • 将第三个表链接到多对多关联中的桥接表

    设计这个数据库的正确方法是什么 这是我设置表格的方式 我在名为 教师 的表和名为 仪器 的表之间存在多对多关系 然后我有一个连接两者的桥接表 我想将另一个表与 BRIDGE 表关联起来 意思是乐器 老师的组合 该表有 3 行 指定老师可以教
  • Amazon RDS for SQL Server 是否支持 SSIS?

    从谷歌搜索中读到一些相互矛盾的答案 不确定答案是是 否还是可能 我觉得读的时候已经很清楚了this http docs aws amazon com AmazonRDS latest UserGuide CHAP SQLServer htm
  • 一种无需 JavaScript 即可在 PHP 中确定浏览器宽度的方法?

    首先有吗 或者我必须使用javascript 我希望能够更改使用的 CSS 因此 frex 我可以为移动设备或其他设备加载较小的字体 不幸的是 仅使用 PHP 无法检测用户分辨率 如果您使用 Javascript 则可以在 cookie 中
  • GUI Java 程序 - 绘图程序

    我一直试图找出我的代码有什么问题 这个想法是创建一个小的 Paint 程序并具有红色 绿色 蓝色和透明按钮 我拥有我能想到的让它工作的一切 但无法弄清楚代码有什么问题 该程序打开 然后立即关闭 import java awt import
  • 如何在 Angular 4 中翻译 mat-paginator?

    你知道如何在 Angular 中翻译 每页项目 吗mat paginator标签 这mat paginator是材料设计中的一个元素 您可以使用MatPaginatorIntl为了这 威尔 豪厄尔制作 https github com an
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对
  • 如何确定 CultureInfo 实例是否支持拉丁字符

    是否可以确定是否CultureInfo http msdn microsoft com en us library system globalization cultureinfo aspx我正在使用的实例是否基于拉丁字符集 我相信你可以使
  • 如何修复:“无法解析类型 java.lang.CharSequence。它是从所需的 .class 文件间接引用的”消息? [复制]

    这个问题在这里已经有答案了 我正在尝试使用这个字符串 amountStr amountStr replace replace replace 但我收到一条错误消息 我知道我收到的错误消息是因为我刚刚发布的字符串已过时 所以我想知道该字符串的
  • 如何在 JFreeChart 中设置多个系列的线条粗细?

    我创建了很多图表 在他们每个人中我都需要打电话 renderer setSeriesStroke i new BasicStroke 2 0f 对于每个系列 renderer is chart getXYPlot getRenderer 我
  • 如何在 OSX 上安装 LaTeX .sty 文件?

    我设置了一个 LaTeX 项目 tex documents some file tex support todonotes sty where some file tex uses todonotes usepackage colorinl
  • 使用 WGL 创建现代 OpenGL 上下文?

    我正在尝试使用 Windows 函数创建 OpenGL 上下文 现代版本 基本上代码就是 创建窗口类 注册班级 创建一个窗口 choose PIXELFORMATDESCRIPTOR并设置它 创建旧版 OpenGL 上下文 使上下文成为当前

随机推荐

  • 将 1GB 数据加载到 hbase 需要 1 小时

    我想将 1GB 1000 万条记录 的 CSV 文件加载到 Hbase 中 我为它编写了 Map Reduce 程序 我的代码运行良好 但需要 1 小时才能完成 最后一个Reducer 花费了半个多小时的时间 有人可以帮我吗 我的代码如下
  • 根据 C 标准,写入然后读取不同的联合成员是否未定义? [复制]

    这个问题在这里已经有答案了 我读到这段代码根据 c 标准是未定义的 但我找不到原因 它在 gcc 8 1 0 和 clang 6 0 中编译没有错误并打印 1 代码如下 include
  • pyEphem 'sublat' 和 'sublong' 是在地心还是大地测量中给出的?

    文档说 如果给 pyEpehm 一个 TLE 和一个时间 它将返回以下内容 但是 我无法将返回的 sublat 和 sublon 转换为 ECEF XYZ 并返回 LLA 坐标进行验证 当我转换回来时 经度会被保留 但对于不同的测试 纬度会
  • Gradle Build 停留在生成调试源

    当我尝试构建任务 android generateDebugSources 时 Gradle 陷入困境 我让它运行了几个小时但没有成功构建 我已经在 Android Studio 1 0 0 0 8 1 Gradle 版本 2 1 1 1
  • 用户表单列表框显示一定范围内的值

    我正在尝试在 Excel 中创建一个用户窗体 其中有一个组合框 并且根据所选值 一系列单元格中的值将显示在用户窗体上的列表框中 到目前为止我有这个 Private Sub UserForm Initialize With ComboBox1
  • 从 MYSQL 中的索引号获取工作日名称

    我有一个表 其中存储 0 6 作为工作日值 我想显示工作日名称 例如 如果值为0 它将显示Sunday 如果值为1 它将显示Monday 同样地 是否有内置的 MySQL 函数可以从索引中获取日期名称 提前致谢 正如 Aliminator提
  • 虚拟属性和质量分配

    开发商 我无法理解接下来的情况 例如我有模型 class Pg City lt ActiveRecord Base belongs to country virtual accessors attr accessor population
  • numpy 初学者:使用 numpy.savetxt 编写数组

    我有一个 numpy 直方图 我想将其输出为制表符分隔的文本文件 我的代码如下 targethist np histogram targetlist bins ilist print targethist np savetxt ChrI d
  • cv::Mat 在 Visual C++ Express 2010 中给出错误

    我有 opencv2 1 并在 64 位计算机上使用 Visual C 2010 Express 进行编码 我之前没有遇到问题 我可以使用其他代码 但是下面的简单代码给出了错误 cvMatExample exe 中 0x571365af m
  • 动态规划:城市遍历

    我遇到了这个问题 有两个人 有 n 个城市的有序序列 并且每对城市之间的距离是给定的 您必须将城市划分为两个子序列 不一定是连续的 使得人 A 访问第一个子序列中的所有城市 按顺序 人 B 访问第二个子序列中的所有城市 按顺序 并且使得A
  • 2D 几何库:LGPL 替代 CGAL? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 CGAL 似乎可以满足我需要的一切 并且可以为我即将进行的项目做更多的事情 它可以从弧线段创建多边形并对其运行布尔运算 它已经有了空间排序
  • 如何保持 /*!与 UglifyJS2 的评论?

    默认行为寻找 license or preserve 但很多插件和库仍在使用 用于许可评论块 我该如何使用UglifyJS2 https github com mishoo UglifyJS2 usage保留以以下内容开头的评论 See h
  • 从另一个 Python 脚本运行 Python 脚本时处理异常

    我正在从另一个 python 脚本运行一个 python 脚本 我想知道如何从父 python 脚本中捕获异常 我的父 python 脚本调用另一个 python 脚本 n 次 最终 被调用的脚本将退出并出现 ValueError 异常 我
  • ie7 内联块的替代方案

    对于我的网站 我使用内联块属性 它适用于 mozilla 和 ie8 但在 ie7 中显示为块元素 我怎样才能把它设置正确 看看这个 http foohack com 2007 11 cross browser support for in
  • 无法初始化 Log4j - SLF4JLoggerContextFactory

    我有一个使用 log4j2 运行的 jetty web 应用程序 它没有记录任何内容 并且启动时出现以下错误 错误 StatusLogger LogManager 返回了 org apache logging slf4j SLF4JLogg
  • numpy 从索引列表创建 2D 掩码 [+ 然后从掩码数组中绘制]

    我有一个二维值数组 需要先屏蔽该数组的某些元素 索引取自约 100k 元组对的列表 然后再从剩余元素中抽取随机样本而不进行替换 我需要既快速 高效 希望避免 for 循环 又具有较小内存占用的东西 因为实际上主数组约为 20000 x 20
  • 更改文本区域字段中的字体和字体大小

    使用以下代码示例
  • String.Replace 不替换撇号

    我试图用字符串替换撇号 由于某种原因 该方法只是在字符串中找不到撇号 这是似乎不起作用的 URL news 2012 march cameron s crackdown on whiplash why the minimum speed r
  • Criteriabuilder之类的,如何长时间做到这一点?

    我尝试使用 Criteriabuilder 中的 like 方法来获取基于模式 10 的所有记录 我想要获取 ID 为 101 10002 1003 1000 等的记录 我用过这个代码 Predicate p cb like r
  • 求解受限于给出非负解的时滞微分方程 (DDE) 系统

    在 MATLAB 中 ode45 http www mathworks com help techdoc ref ode45 html有一个参数叫做NonNegative http www mathworks com help techdo