常微分方程

article/2025/10/2 22:54:00

高数中的微分方程

全微分方程(需要积分域与路径无关)

一阶线性常微分方程 y’+p(x)y=q(x)

对于一阶线性常微分方程,常用的方法是常数变易法:
对于方程:将y’+p(x)y=0中的常数变为函数求解非齐次方程

( ∫ q ( x ) ∗ e ∫ p ( x ) d x + c ) e ∫ − p ( x ) d x (\int q(x)*e^{ \int p(x)dx}+c)e^{ \int -p(x)dx} (q(x)ep(x)dx+c)ep(x)dx

全微分方乘与积分因子法

微分方程P(x,y)dx+Q(x,y)dy=0为全微分方程的重要条件为
∂ P ∂ y = ∂ Q ∂ x \frac { \partial P } { \partial y }=\frac { \partial Q } { \partial x } yP=xQ
如果存在 φ(x,y)使得
φ P d x + φ Q = 0 \varphi Pdx+\varphi Q=0 φPdx+φQ=0
为全微分方程,则将φ(x,y)称为方程的积分因子
∂ ( φ ∗ P ) ∂ y = φ ∂ ( φ ∗ Q ) ∂ x \frac {\partial (φ *P) } { \partial y }=\frac {φ \partial (φ *Q) } { \partial x } y(φP)=xφ(φQ)

Pdx+Qdy=0 什么情况下存在积分因子,如何确定积分因子?

1. 1 Q ( ∂ P ∂ y − ∂ Q ∂ x ) = μ ( x ) [ 只 与 x 有 关 ] \frac { 1 } { Q }( \frac { \partial P } { \partial y }-\frac { \partial Q } { \partial x })=μ(x)[只与x有关] Q1(yPxQ)=μ(x)[x]
则方程的积分因子 φ = φ ( x ) = e ∫ μ ( x ) d x φ=φ(x)=e^{\int μ(x) dx} φ=φ(x)=eμ(x)dx
2. − 1 P ( ∂ P ∂ y − ∂ Q ∂ x ) = μ ( y ) [ 只 与 y 有 关 ] -\frac { 1 } { P }( \frac { \partial P } { \partial y }-\frac { \partial Q } { \partial x })=μ(y)[只与y有关] P1(yPxQ)=μ(y)[y]
则方程的积分因子 φ = φ ( y ) = e ∫ μ ( y ) d y φ=φ(y)=e^{\int μ(y) dy} φ=φ(y)=eμ(y)dy

3.若φ(x,y)为
P(x,y)dx + Q(x,y)dy= 0的一个积分因子,并且φP(x, y)dx + φQ(x,y)dy = du(x,y),
则φ(x,y)F(u)也为方程(*)的一一个积分因子,其中F(u)是u的任一连续可微函数.

应用.如果P(x,y)dx + Q(x,y)dy= 0的积分因子不好确定,而其中p=P1+P2, Q=Q1+Q2,则上
式可写成
( P r d x + Q 1 d y ) + ( P 2 d x + Q z d y ) = 0 (Prdx + Q1dy) + (P2dx+ Qzdy)= 0 (Prdx+Q1dy)+(P2dx+Qzdy)=0
分别求出两组的积分因子,即存在φ1,φ2使得P1P1dx + P1Q1dy = du1,P2P2dx + φzQzdy = du2.

寻找公共的积分因子

φ 1 ∗ F 1 ( u 1 ) = φ 2 ∗ F 2 ( u 2 ) φ1*F1(u1)= φ2*F2(u2) φ1F1(u1)=φ2F2(u2)

二阶常系数齐次常微分方程

解的形式: g ( x ) e f ( x ) g(x)e^{f(x)} g(x)ef(x)

n阶常系数常微分方程第“0”定律:

f ( x ) 为 正 比 例 函 数 f(x)为正比例函数 f(x)
注:这个第“0”定律是本文作者命名的

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

对于二阶常系数齐次常微分方程,有两个线性无关的特解

二阶常系数齐次常微分方程: y = e r x y=e^{rx} y=erx
当特征方程有
两个不同实根时:
两 解 线 性 无 关 两解线性无关 线
两个相同实根时:
两 解 线 性 相 关 , 设 y 2 y 1 = u ( x ) , 带 入 得 u ′ ′ = 0 , 则 u ( x ) = k x 两解线性相关,设\frac{y2}{y1}=u(x),带入得u''=0,则u(x)=kx 线y1y2=u(x),u=0u(x)=kx
两个不同复根时:
r = α ± β i , 两 解 线 性 无 关 解 为 : e α x ( C 1 c o s ( β x ) + C 2 s i n ( β x ) ) r=α±βi,两解线性无关 解为:e^{αx}(C_{1}cos(βx)+C_{2}sin(βx)) r=α±βi线eαx(C1cos(βx)+C2sin(βx))

二阶常系数非齐次常微分方程

1) f ( x ) = P m ( x ) ∗ e λ x f(x)=P_{m}(x)*e^{\lambda x} f(x)=Pm(x)eλx

解为: y = x k ∗ Q m ( x ) ∗ e λ x ( k 是 非 齐 次 项 的 λ 作 为 特 征 方 程 的 根 的 重 数 ( 0 / 1 / 2 ) ) y=x^k*Q_{m}(x)*e^{\lambda x}(k是非齐次项的 \lambda 作为特征方程的根的重数(0/1/2)) y=xkQm(x)eλx(kλ(0/1/2))

2) f ( x ) = P l ( x ) ∗ e α x ∗ c o s ( β x ) + P n ( x ) ∗ e α x ∗ s i n ( β x ) f(x)=P_{l}(x)*e^{αx}*cos(βx)+P_{n}(x)*e^{αx}*sin(βx) f(x)=Pl(x)eαxcos(βx)+Pn(x)eαxsin(βx)

解为: y = x k ∗ e a x ∗ ( R 1 m c o s ( β x ) + R 2 m s i n ( β x ) ) ( k 是 α ± β i x 作 为 特 征 方 程 的 根 的 重 数 ( 0 / 1 ) ) ( m = m a x ( l , n ) ) m 取 大 值 y=x^k*e^{ax}*(R_{1m}cos(βx)+R_{2m}sin(βx)) (k是 α±βi x作为特征方程的根的重数(0/1))(m=max(l,n)) \\ m取大值 y=xkeax(R1mcos(βx)+R2msin(βx))(kα±βix(0/1))(m=max(ln))m

∗ ∗ 注 意 多 了 一 个 x k ∗ ∗ **注意多了一个x^k** xk


有些特殊的变系数线性常微分方程,则可以通过变量代换化为常系数线性微分方程


二阶可降阶微分方程(二阶降到一阶):将y’用其他变量替换即可降一阶。(要保持只有两个变量,所以只能适用于y’’=f(x,y’)形式或者f(y,y’)形势)

伯努利微分方程

y’+P(x)y=Q(x)y^n的微分方程
其中n≠0并且n≠1,其中P(x),Q(x)为已知函数,因为当n=0,1时该方程是线性微分方程。
令z=y^{1-n}转化为一阶线性常微分方程

欧拉方程

x n ∗ y ( n ) + P 1 ∗ x n − 1 ∗ y ( n − 1 ) + … … + P n − 1 ∗ x n − 1 ∗ y ( 1 ) + P n ∗ x n − n ∗ y ( 1 ) = f ( x ) x ^ { n }*y^{(n)}+P_{1}*x ^ { n-1}*y^{(n-1)}+……+P_{n-1}*x ^ { n-1}*y^{(1)}+P_{n}*x ^ { n-n}*y^{(1)}=f(x) xny(n)+P1xn1y(n1)++Pn1xn1y(1)+Pnxnny(1)=f(x)
n阶线性变系数非齐次
x = e t , 有 x 1 ∗ y ( 1 ) = D y , 记 号 D 表 示 对 t 求 导 的 运 算 x=e^t,有x ^ { 1}*y^{(1)}= Dy,记号D表示对t求导的运算 x=et,x1y(1)=DyDt
一 般 地 , 有 x k ∗ y ( k ) = D ( D − 1 ) . . . ( D − k + 1 ) y 一般地,有x ^ { k}*y^{(k)}= D(D- 1)...(D-k+ 1)y xky(k)=D(D1)...(Dk+1)y

把它代入欧拉方程,便得到一个以t为自变量的n阶常系数非齐次线性微分方程。
解法和二阶的方法一样,先求其次通解,再根据右端项求特解。
在求出这个方程的解后,把t换成 lnx ,即得原方程的解。

参考:
https://na.mbd.baidu.com/r/adrv9xXNAI?f=cp&u=f1f63e03e43635b1


http://chatgpt.dhexx.cn/article/trQPR91G.shtml

相关文章

常数变易法二

/*打印这个* A* ABA* ABCBA* ABCDCBA* ABCDEDCBA */// " ABCDCBA" 第3行&#xff08;下标从0开始吧&#xff01;&#xff09;for(int i0;i<4;i) System.out.print(" ");for(int i0;i<4;i) System.out.print((char)(Ai));for(in…

常数易变法

/*常数变易法* 打印金字塔* ** * ** * * ** * * * ** * * * * **/ public class A {public static void main(String[] args) {//常数变易法&#xff0c;演变过程System.out.println(" *");//第一行System.out.println(&…

个人对于常微分方程之一阶线性非齐次方程的常数变易法的见解

我们都知道&#xff0c;对常微分方程 最简单也是最本质的处理方法就是分离变量&#xff0c;使得方程可以变成的形式&#xff0c;两边再进行积分便可以得到方程的解.在常微分方程&#xff08;以下简称为方程&#xff09;中&#xff0c;有两类比较特殊的方程&#xff0c;分别是一…

常数变易法

思路: 现将变动部分用常数代替&#xff0c;再逐步将常数替换为变数(变量) 关键是寻找变化的规律&#xff0c;如果不直观&#xff0c;可以列出所有变化&#xff0c;进行比对&#xff0c;然后设计公式 实例: 1.输出三角星号 首先找规律&#xff0c;发现每一行都是先输出空格&…

常数变易法的“前世今生”

常数变易法思想的来源或本质是什么&#xff1f;https://www.zhihu.com/question/31329122 “常数变易法”有效的原理&#xff1a;https://blog.csdn.net/w573719227/article/details/83050039 常数变易法的解释https://www.cnblogs.com/lookof/archive/2009/01/06/1370065.html…

DBUtils事务

#DBUtils&事务 掌握DBUtils实现增删改 掌握DBUtils实现查询 理解事务的概念 理解脏读,不可重复读,幻读的概念及解决办法 能够在MySQL中使用事务 能够在JDBC中使用事务 能够在DBUtils中使用事务 第一章 DBUtils 如果只使用JDBC进行开发&#xff0c;我们会发现冗余代码过多…

Dbutils下载

链接&#xff1a;https://pan.baidu.com/s/1LlGyKUgYX8zgjgQk6GOwhA?pwdqdm3 提取码&#xff1a;qdm3 版本为最新1.7版本&#xff0c;解压即可用

java dbutils工具类_DbUtils工具类使用

DbUtils工具类使用 创建数据库 CREATE TABLE student ( userId int(11) NOT NULL, userName varchar(30) NOT NULL, gender char(1) NOT NULL, age int(11) DEFAULT NULL, PRIMARY KEY (userId) ) ENGINEInnoDB DEFAULT CHARSETutf8 把相关的包引入到项目里: 编写Student类: pa…

python DbUtils 封装

python dbutils 简介及准备工作 dbutils封装文件传送门 DBUtils是一套Python数据库连接池包&#xff0c;并允许对非线程安全的数据库接口进行线程安全包装。DBUtils来自Webware for Python。 DBUtils提供两种外部接口&#xff1a; PersistentDB &#xff1a;提供线程专用的数…

DBUtils工具

DBUtils工具 为了更加简单地使用JDBC&#xff0c;Apache组织提供了一个工具类库commons-dbutils&#xff0c;它是操作数据库地一个组件&#xff0c;实现一个对JDBC的简单封装&#xff0c;可以在不影响性能的情况下极大地简化JDBC地编码工作量。 API介绍 commons-dbutils的核…

java dbutils_Java学习之DBUtils

DBUtils&#xff1a;只是帮我们简化了CRUD 的代码。数据库连接的创建以及获取工作&#xff0c;不在其工作范围 一、DBUtils应用 ①、DBUtils的jar文件的下载 ②、Sql Server 、C3P0、DBUtils环境搭建(导入相应jar文件) Sql Server &#xff1a;sqljdbc42.jar(JDBC驱动) C3P0&am…

DBUtils介绍与使用

目录 一、DBUtils介绍二、DBUtils使用&#xff08;一&#xff09;导入相关Jar包&#xff08;二&#xff09;使用DBUtils完成数据库操作 一、DBUtils介绍 DBUtils&#xff1a;是为了简化JDBC的快发而产生的开发工具包&#xff0c;是对JDBC的一种封装。 DBUtils是个小巧的JDBC轻…

DBUtils详解

目录 DBUtils查询数据 匿名内部类方式 反射方式 反射方式查询数据的触发器分类 多表查询 DBUtils增加,删除,修改数据 前言 使用DBUtils操作数据库,会更加的方便,因为它封装了JDBC的代码,这里我们配合c3p0使用 并不是说一定要用c3p0,因为使用DBUtils 的时候需要手动传递…

JavaWeb——(13)DBUtils

目录 一、DBUtils介绍 二、DBUtils核心对象 三、DBUtils使用简单案例 四、QueryRunner对象 4.1构造函数 4.2方法 五、ResultSetHandler接口 六、DBUtils控制事务 6.1ThreadLocal 6.2模拟转账业务 一、DBUtils介绍 DBUtils是java编程中的数据库操作实用工具&#xff…

DBUtils工具类的使用方法详解

DBUtils使用方法详解 目录 DBUtils使用方法详解一、前言二、JDBC介绍1.基本概念2.JDBC访问数据库的流程 三、DBUtils介绍1.基本概念2.配置文件3.创建JDBCUtils类4.实现对数据表的增删改查 四、对以上代码的说明五、总结 一、前言 本文是关于DBUtils使用方法的介绍&#xff0c;…

如何用计算机解kkt条件,【直观详解】拉格朗日乘法和KKT条件

【阅读时间】8min - 10mun 【内容简介】直观的解读了什么是拉格朗日乘子法,以及如何求解拉格朗日方程,并且给出几个直观的例子,针对不等式约束解读了KKT条件的必要条件和充分条件 What & Why 拉格朗日乘法(Lagrange multiplier)是一种在最优化的问题中寻找多元函数在其变…

SVM中的KKT条件和拉格朗日对偶

首先&#xff0c;我们要理解KKT条件是用来干嘛的&#xff1f; KKT条件用来判断一个解是否属于一个非线性优化问题。 求最优解&#xff1a; 约束条件分为 1、等式约束 2、不等式约束 对于等式约束的优化问题&#xff0c;可以直接应用拉格朗日乘子法去求取最优值&#xff1b; …

KKT条件详解

KKT条件详解 主要参考这篇文章和这个知乎回答。 KKT最优化条件是Karush[1939]&#xff0c;以及Kuhn和Tucker[1951]先后独立发表出來的。这组最优化条件在Kuhn和Tucker发表之后才逐渐受到重视&#xff0c;因此许多情况下只记载成库恩塔克条件&#xff08;Kuhn-Tucker conditions…