精华内容
下载资源
问答
  • 打靶法(含Matlab程序)西京学数学软件实验任务书课程名称数学软件实验班级数0901学号0912020107姓名李亚强实验课题微分方程组边值问题数值算法(打靶法,有限差分法)实验目的熟悉微分方程组边值问题数值算法(打靶法,...

    打靶法(含Matlab程序)

    西京学数学软件实验任务书

    课程名称数学软件实验班级数0901学号0912020107姓名李亚强实验课题微分方程组边值问题数值算法(打靶法,有限差分法)实验目的熟悉微分方程组边值问题数值算法(打靶法,有限差分法)实验要求运用Matlab/C/C++/Java/Maple/Mathematica等其中一种语言完成实验内容微分方程组边值问题数值算法(打靶法,有限差分法)成绩教师

    动方向控制减速的推力,主要的控制量只有一个减速推力,减速还会消耗燃料让登月器的质量减小。所以在极坐标下系统的状态就是x‘=[质量m,角度theta,高度r,角速度omega,径速度v]这五个量,输入就是减速力F。先列微分方程,dx/dt=f(x)+B*F,其中x是5*1的列向量,质量dm/dt=-F/2940,剩下几个翻下极坐标的手册。把这个动力学模型放到matlab里就能求解了,微分方程数值解用ode45。第一问F=0,让你求椭圆轨道非常容易。注意附件1里说15公里的时候速度是1.7km/s。算完以后验证一下对不对,对的话就是他了,不对的话说明这个椭圆轨道有进动,到时再说。(2)?算出轨道就能计算减速力了。这时候你随便给个常数减速力到方程里飞船八成都能降落,但不是最优解。想想整个过程,开始降落之前飞船总机械能就那么多,你需要对飞船做负功让机械能减到0。题目里写发动机喷出翔的相对速度是一定的,直觉告诉我飞船速度快的时候多喷一些速度慢的时候少喷一些,可以提高做负功的效率。但是多喷也不能超过上限7500N,所以这就是一个带约束优化问题,matlab里边有专用的优化函数,用fmincon就好。找出最优解以后把过程画出来,看看F可不可以是那5个状态量的线性组合,如果是的话就非常happy,不是的话再说。三四阶段你可以扯点图像识别,什么二维复利叶分解找平坦区域,怎么一边下降一边根据自身状态调整路径之类的。五六阶段还真不知道说什么。一二阶段肯定是重点啦(3)?误差分析其实还挺难的。可能的误差来源是地球的引力,月亮绕地球向心加速度,太阳的引力(可能会很小),对自身速度、角度的测量误差(比如你测出自身当前速度100m/s但实际上是105m/s),控制的时候F大小以及角度的误差(比如你想朝正前方向喷2000N但实际上偏了2度而且F=2010N之类)。上一问已经求出了最优控制策略和飞船路线,把这些扰动加进去以后算出新的路线减掉理想路线求偏差,然后随便用个卡尔曼滤波器把误差给校正All?for?Joy2014/9/13?11:14:38老师的思路,求大神解答给我一份呀

    n=fix((b-a)/h); X=zeros(n+1,1); CT1=[alpha,0];

    Y=zeros(n+1,length(CT1)); Y1=zeros(n+1,length(CT1));

    Y2=zeros(n+1,length(CT1));

    X=a:h:b;

    Y1(1,:)= CT1;

    CT2=[0,1];Y2(1,:)= CT2;

    for k=1:n

    k1=feval(dydx1,X(k),Y1(k,:))

    x2=X(k)+h/2;y2=Y1(k,:)'+k1*h/2;

    k2=feval(dydx1,x2,y2);

    k3=feval(dydx1,x2,Y1(k,:)'+k2*h/2);

    k4=feval(dydx1, X(k)+h,Y1(k,:)'+k3*h);

    Y1(k+1,:)=Y1(k,:)+h*(k1'+2*k2'+2*k3'+k4')/6,k=k+1;

    end

    u=Y1(:,1)

    for k=1:n

    k1=feval(dydx2,X(k),Y2(k,:))

    x2=X(k)+h/2;y2=Y2(k,:)'+k1*h/2;

    k2=feval(dydx2,x2,y2);

    k3=feval(dydx2,x2,Y2(k,:)'+k2*h/2);

    k4=feval(dydx2, X(k)+h,Y2(k,:)'+k3*h);

    Y2(k+1,:)=Y2(k,:)+h*(k1'+2*k2'+2*k3'+k4')/6,k=k+1;

    end

    v=Y2(:,1)

    Y=u+(beta-u(n+1))*v/v(n+1)

    for k=2:n+1

    wucha(k)=norm(Y(k)-Y(k-1)); k=k+1;

    end

    X=X(1:n+1);Y=Y(1:n+1,:);k=1:n+1;wucha=wucha(1:k,:);

    P=[k',X',Y,wucha'];

    plot(X,Y(:,1),'ro',X,Y1(:,1),'g*',X,Y2(:,1),'mp')

    xlabel('轴\it x'); ylabel('轴\it y'

    展开全文
  • 打靶法求解边值问题

    2018-05-04 08:26:29
    求解线性微分方程边值问题的数值解法有打靶法和有限差分法,有详细的推导过程和MATLAB代码,以及相应的算例实现,并对两种方法进行优劣性比较
  • 打靶法MATLAB程序

    2011-01-20 14:17:26
    打靶法的MATLAB程序,希望对大家有用处!谢谢啦
  • 给出了求一维缓变复折射率波导本征值的打靶法,它是对求一维实折射率波导本征值的打靶法的推广。利用它可以分析增益或损耗对TE和TM模式的影响,并给出了计算实例。
  • 实用打靶法解微分方程,MATLAB实例
  • 打靶法解微分方程MATLAB程序实例
  • 西京学数学软件实验任务书 课程名称 数学软件实验 班级 数 0901 学号 0912020107 姓名 李亚强 实验课题 微分方程组边值问题数值算法打靶法有限差分法 实验目的 熟悉微分方程组边值问题数值算法打靶法有限差 分法 ...
  • 打靶法-求解边值问题

    2012-07-23 14:51:10
    打靶法-求解边值问题,主要应用于求解微分方程组
  • 二阶非线性微分方程 打靶法 附:matlab源码
  • 采用打靶法对含摩擦齿轮系统进行运动稳定性分析能够揭示摩擦对齿轮系统动力学行为所产生的复杂影响。建立了计及摩擦的单对齿轮非线性系统的非线性动力学模型,采用打靶法对其周期运动进行了求解,并应用Floquet乘子...
  • 讨论含单参数的常微分方程两点边值问题,用局部延拓方法跟踪求出正则的解枝,当解枝上遇到折叠点时,局部延拓方法不再...给出了结合多重打靶法的拟弧长延拓方法的具体算法,从而顺利通过了折叠点,计算出了整个解枝。
  • 用MATLAB和打靶法实现平面PN结一维泊松方程的简捷计算.pdf
  • 提出了用打靶法结合有限差分法求解稳态受激布里渊散射(SBS)耦合方程的算法.利用了先猜测,再修正的逐渐逼近的方法将边值问题转化为初值问题,从而解决了如何确定边界上的泵浦光和Stokes光的初始值的问题.在计算...
  • 将一种求解最优控制问题的新方法—高斯伪谱法( Gauss Pseudospectral Method-GPM) 和传统的直接打靶法有效结合,对月球着陆器定点软着陆轨道快速优化问题做出了研究。推导了高精度模型下着陆动力学方程。针对优化...
  • 常微分方程的边值问题的一种解法,即简单打靶法
  • 打靶法求解两点边值问题

    千次阅读 2017-07-17 12:47:00
    function varargout = shooting_two_point_boundary(varargin) % ========================================================== ...% 基于打靶法计算两点边值问题,仅针对二阶微分方程 % author: xi...
    function varargout = shooting_two_point_boundary(varargin)
    % ==========================================================
    % 函数名:shooting_two_point_boundary.m
    % 基于打靶法计算两点边值问题,仅针对二阶微分方程
    % author: xianfa110.
    % blog: http://blog.sina.com.cn/xianfa110
    % 函数形式:
    % [result,err,z0] = shooting_two_point_boundary(@fun,[y_0,y_end],[x_0,x_1],h);
    % 输入:
    % fun = 函数名;
    % y_0 = 函数初值;
    % y_end = 函数终值;
    % x_0 = 自变量初值;
    % x_end = 自变量终值;
    % h = 积分步长;
    % 输出:
    % result = [x,y];
    % err = 误差;
    % z0 = y'初值;
    % ===========================================================
    % 函数fun:4y''+yy' = 2x^3 +16 ; 2<= x <=3
    % 写法:
    % function f = fun(y,x)
    % dy = y(2);
    % dz = (2*x^3+16-y(1)*y(2))/4;
    % f = [dy,dz];
    % ===========================================================
    % 注意:y(1) = y,y(2) = y'。
    % ===========================================================
    F = varargin{1};
    y_0 = varargin{2}(1);
    y_end = varargin{2}(2);
    x_0 = varargin{3}(1);
    x_1 = varargin{3}(2);
    ts = varargin{4};
    t0 = x_0-0.5;
    flg = 0;
    kesi = 1e-6;
    y0 = rkkt(F,[y_0,t0],x_0,x_1,ts);
    n = length(y0(:,1));
    if abs(y0(n,1)-y_end)<=kesi
        flg=1;
    else
        t1=t0+1;
        y1=rkkt(F,[y_0,t1],x_0,x_1,ts);
        if abs(y1(n,1)-y_end)<=kesi
            flg=1;
        end
    end
    if flg ~= 1
        while abs(y1(n,1)-y_end) > kesi
            % ==========插值法求解非线性方程=============== %
            t2 = t1-(y1(n,1)-y_end)*(t1-t0)/(y1(n,1)-y0(n,1));
            y2 = rkkt(F,[y_0,t2],x_0,x_1,ts);
            t0=t1;
            t1=t2;
            y0=y1;
            y1=y2;
        end
    end
    x = x_0:ts:x_1;
    out = [x',y1(:,1)];
    varargout{1} = out;
    varargout{2} = abs(y1(n,1)-y_end);
    varargout{3} = t1;
    

    转载:http://blog.sina.com.cn/s/blog_408540af0100b7mi.html

    转载于:https://www.cnblogs.com/txy19981002/p/7193735.html

    展开全文
  • 2011-12-16 回答1、你贴出来的报错信息和代码对不上号:前面显示错误的那行代码和你贴出来的完全不一样;而后面的错误(input argument 'u1' is undefined)也不可能是目前的代码所导致的——的确是有错,但错误应该是...

    2011-12-16 回答

    1、你贴出来的报错信息和代码对不上号:前面显示错误的那行代码和你贴出来的完全不一样;而后面的错误(input argument 'u1' is undefined)也不可能是目前的代码所导致的——的确是有错,但错误应该是il未定义才对。

    2、使用ode*系列函数解常微分方程,用于描述微分方程的函数(例如你这里的current)输入输出参数是有固定格式要求的,应该是

    dy = current( t, y )

    其中t是时间,y是t时刻的状态变量。这两二个参数即使你在函数中用不上,也必须列在参数表中。当然,变量的具体名字可以自定,但含义就是上面说的。

    例如,按照你现在的写法,传递到current函数的u1就是时间,而u2则是微分方程的状态变量,相当于y,是一个向量,有3个元素。如果按照上面的固定格式,current函数不允许有三个输入参数,那么,既然你写了三个输入参数,第三个参数il自然就没有定义,所以会出错。

    我猜测,你的方程中u1、u2和il其实就是状态变量y——如果是这样,那么在current函数中将其分别以y(1)、y(2)、y(3)代替就可以了,后面的大部分内容也就没必要看了。

    之所以对描述微分方程的函数(例如current)有这种固定的格式要求,是因为 ode*系列函数属于所谓“函数的函数”(function functions),也就是说,它的输入参数当中有其它函数(可以是函数文件名,或者函数句柄,也可以是inline函数、匿名函数)。ode* 函数在求解过程中,会反复调用作为参数传递给它的函数,而调用的过程并非由我们决定的,而是固定地写在ode*函数代码中的,所以,对描述微分方程的函数有固定格式要求也就不足为奇了。

    3、假如描述微分方程的函数除了t和y之外,的确还需要其它数据,应该怎么办?

    首先,请认真考虑一下问题本身,这些数据到底是什么性质?

    如果是常数,可以考虑直接写在current函数里面;

    如果变化的,但仅与时间t和状态变量y及其导数有关,也可以直接在current函数里面计算出来,而无需由外部传递。

    如果上面两种情况都不适合,那么就需要用到传递附加参数了。传递附加参数的常用手段包括使用匿名函数、嵌套函数以及通过函数参数传递三种方式,下面介绍一下第三种方式。

    ode系列函数较为一般的调用格式为

    [t,y] =solver(odefun,tspan,y0,options,p1,p2...)

    这些参数中,p1、p2等就是要额外传递的参数,而相应的微分方程函数应该定义成

    dy = current( t, y,p1, p2... )

    options为求解器选项,如果不知道(同时也不想知道)它有什么用,可以不用管它,调用的时候用空数组([])代替即可。

    4、还有一点小问题:

    dy=zeros(1,3);

    应改成

    dy=zeros(3,1);

    描述微分方程的函数要求返回列向量。

    参考改动

    function dy = current( t, y )

    u1 = y(1);

    u2 = y(2);

    il = y(3);

    dy=zeros(3,1);

    dy(1)=u1;

    dy(2)=u1/(1.96*10^-4)+u2/(1.96*10^-4)+il/(10^-7);

    dy(3)=-u2/(17.2*10^-3)-0.5*il/(17.2*10^-3);

    这样修改后,程序可以运行,但求出来的结果是发散的,请你再仔细检查一下方程是否正确。

    由于不确定你的方程中u1、u2和il到底是什么,所以只能帮你说到这里了。

    展开全文
  • 提供二阶非线性微分方程边值问题的数值解法,其中用Newton迭代进行迭代
  • 第四十九篇 二阶常微分方程的打靶法 边界值问题 当我们试图用自变量的不同值所提供的信息来解二阶或更高阶的常微分方程时,我们必须使用与前面描述的不同的数值方法。 前面提到的初值问题经常涉及到“时间”作为自...

    第四十九篇 二阶常微分方程的打靶法

    边界值问题

    当我们试图用自变量的不同值所提供的信息来解二阶或更高阶的常微分方程时,我们必须使用与前面描述的不同的数值方法。
    前面提到的初值问题经常涉及到“时间”作为自变量,解决技术要求我们按步骤“前进”,直到达到所需的解。在这种情况下,解的定义域不是有限的,因为原则上我们可以无限地沿着正方向或负方向前进。
    边值问题涉及一个有限解的区间,在这个区间内去求解。这类问题的自变量通常是空间中测量距离的坐标。一个典型的二阶边值问题可能下面的形式。
    在这里插入图片描述
    解的定义域(假设为B >a)是由x在A≤x≤B的范围内的值给出的,我们需要的是找到对应于x在这个范围内的y的值。
    本篇将考虑的数值解法分为三类
    (a)用有限差分等效代替原来的微分方程的技术。
    (b)“打靶法”,试图用一个等价初值问题代替边值问题。
    ©“加权残差”法,即猜测一个满足边界条件的试解,并调整解内的某些参数以使误差最小化。

    有限差分法

    在这种方法中,微分方程中的导数项被有限差分近似代替。正如微分方程是线性的,将会显示的那样。这个过程会导致一个线性联立方程,可以使用前面描述的方法求解。
    首先,需要定义一些有限差分近似来处理经常遇到的导数。考虑下图的解曲线,其中x轴被细分为规则的网格点,距离为h。
    在这里插入图片描述
    可以用下面任意一种方法来表示y对x的一阶导数
    在这里插入图片描述
    这些有限差分公式通过计算函数在xi附近的连接点的直线的斜率来逼近一阶导数。正向和反向公式有偏差,因为它们只包括xi的右侧或左侧的点。中心差分形式将xi左右的点考虑在内。
    高阶导数也可以用这种方法近似。例如,在xi处的二阶导数可以通过取一阶导数的逆向差来估计,如下所示
    在这里插入图片描述
    如果我们把一阶导数的前向差分公式代入,得到
    在这里插入图片描述
    类似上面可以得到yi’‘的中心差分公式
    在这里插入图片描述
    类似地,三阶导数的中心差分公式可以由
    在这里插入图片描述
    对x的四阶导数
    在这里插入图片描述
    这些高阶导数的正向和逆向差分也很容易得到,并且通过在差分公式中包含更多的点,可以获得更高的精度。
    逆向差分公式是正向差分公式的简单镜像,除了奇数导数(即,y’,y " '等),其中符号必须相反。
    一阶导数在x0处的四点正向差分公式为
    在这里插入图片描述
    逆向差分公式为
    在这里插入图片描述
    “两点边值问题的解决方案包括把x的范围分裂到n个相等的部分,每个宽度h。n = 4,如果给定的边界条件,x = A和x = B,令ξ= x0 + ih, i = 1, 2,……,其中x0 = A, xn = B。
    在每个点i = 1,2,…n−1处,微分方程以有限差分形式表示。如果微分方程是线性的,这将导致n−1个联立线性方程,在未知值yi, i = 1,2,…,n−1,其中yi表示在xi处的解。细分得越多,解的细节和精度就越高,但必须解决的联立方程也就越多。

    计算实例

    给定y’’ = 3x + 4y,边界条件y(0) = 0, y(1) = 1,利用h = 0.2有限差分求解0≤x≤1范围内的方程。
    在这里插入图片描述
    首先将微分方程写成有限差分形式。选择二阶导数公式。通常使用最低阶中心差分形式,除非有特殊的情况去使用较不准确的正向或逆向差分形式,因此
    在这里插入图片描述
    微分方程可以写成
    在这里插入图片描述
    求解域被分割成5条相等的条带,每条宽度h = 0.2。
    然后将有限差分方程写在每一个需要解的网格点上。需要时引入已知的边界条件,得到下表所示的四个方程。
    这些(非对称)方程可以用线性方程求解中的任何合适的程序求解。第二个表将数值解与精确解进行了比较
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    显然,有限差分解的精度可以通过在0≤x≤1范围内进行更多的细分来进一步提高,但代价是求解更多的方程。
    上个例子显示了一个问题,那就是如果使用了y "的高阶有限差分表示。例如,如果对y’‘使用五点中心差分公式,那么为了表示y1’‘和y4’’,就需要y在解域之外的值。为了解这个系统,还需要更多的信息,因为未知数要比方程多。
    在解域之外引入点(至少是暂时引入点)的要求经常会碰到,并且可以通过采取合并适当的边界条件来解决,如下一个示例所示。
    考虑一个边值问题
    在这里插入图片描述
    在这种情况下,y (B)是未知的,所以微分方程的有限差分需要写在x = B,即使使用最简单的中心差分公式y”,相应的“解决方案”在x5,将如下图所示。在这种情况下,我们有5个未知数,但只有4个方程。
    在这里插入图片描述
    第五个方程来自导数边界条件,它也可以写成有限差分形式,即使用中心差分
    在这里插入图片描述

    计算实例

    给定x2y’’ + 2xy’−2y = x2,边界条件y(1) = 1, y’(1.5) =−1。用h = 0.1有限差分求解1≤x≤1.5范围内的方程。
    微分方程以有限差分形式,对两个导数项使用中心差分写成如下
    在这里插入图片描述
    并应用于5个需要解的x值,如下图所示。
    得到的方程如下表所示。从下图可以看出,第五个方程在解域外引入了第六个未知数y6 = y(1.6)。中心差分形式的导数边界条件
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    用于提供第六个方程。
    这六个线性方程的解,连同精确解,给出在下表中
    在这里插入图片描述
    在这里插入图片描述
    本节给出的有限差分解在网格点相对较少的情况下表现得相当好。但并不会总是这种情况,特别是当导数在解域中发生突然的变化时。在没有精确解可供比较的情况下,建议使用两个或三个不同层次的解域来解决问题。解对网格尺寸参数h的灵敏度往往表明解的精度。
    从我们的角度来看,应该使h足够小,以达到所需的精度,但不能小于必要的值,因为这会导致过度大的方程组。

    打靶法

    打靶法试图像解决初值问题一样解决边值问题。考虑下面的二阶方程
    在这里插入图片描述
    在一个打靶法中,将解决一系列的初值问题的形式
    在这里插入图片描述
    通过有条不紊地改变初始梯度ai,我们最终可以在x = B处得到一个足够接近所需边值yB的解。有几种不同的策略来收敛所需的解,这些方法类似于寻找非线性代数方程的根。
    这里描述的方法如下图所示是选择两个初始梯度y ’ 0 (A) = a0和y ’ 1 (A) = a1,通过一步法之后,得到y0(B) = y0和y1 (B) = y₁分别在所需的边界条件yB的两边,即,y0 < yB < y1(或y1< yB < y0)。
    在这里插入图片描述
    通过线性插值,给出了初始梯度的改进估计
    在这里插入图片描述
    从而得出y(B) = y∗。
    根据下面的测试,其中一个初始梯度被∗取代,如果
    在这里插入图片描述
    然后用y代替y0和a代替a0
    或者用y代替y1和a代替a1
    在整个迭代过程中,我们的目标是保持一个高估目标边界条件的初始梯度,以及一个低估目标边界条件的初始梯度。随着迭代的进行,y∗趋于目标值,当根据准则满足收敛容差时,计算停止
    在这里插入图片描述
    迭代过程本质上就是之前描述的“假位置法”。详情可见试位法求解非线性方程

    程序如下

    程序计算的二阶常微分方程为
    在这里插入图片描述

    import numpy as np
    a0=np.zeros((2))
    k0=np.zeros((2))
    k1=np.zeros((2))
    k2=np.zeros((2))
    k3=np.zeros((2))
    y=np.zeros((2))
    nsteps=5;xa=0.0;ya=0.0;xb=1.0;yb=1.0
    a0[:]=(0.0,1.0)
    tol=0.0001;limit=25
    y0=np.zeros((nsteps+1,2))
    ystar=np.zeros((nsteps+1))
    print('--二阶常微分方程的打靶法--')
    h=(xb-xa)/nsteps
    def f74(x,y):
        f74=np.zeros((2))
        f74[0]=y[1]
        f74[1]=3.0*x**2+4.0*y[0]
        return f74
    for j in range(1,3):
        x=xa;y[0]=ya;y[1]=a0[j-1]
        for i in range(0,nsteps+1):
            y0[i,j-1]=y[0]
            k0=h*f74(x,y);k1=h*f74(x+h/2.0,y+k0/2.0)
            k2=h*f74(x+h/2.0,y+k1/2.0);k3=h*f74(x+h,y+k2)
            y=y+(k0+2.0*k1+2.0*k2+k3)/6.0;x=x+h
    if (y0[nsteps,0]-yb)*(y0[nsteps,1]-yb)>0:
        print('尝试一个新梯度')
    iters=0
    while(True):
        iters=iters+1
        astar=a0[0]+(yb-y0[nsteps,0])*(a0[1]-a0[0])/(y0[nsteps,1]-y0[nsteps,0])
        x=xa;y[0]=ya;y[1]=astar
        for i in range(0,nsteps+1):
            ystar[i]=y[0]
            k0=h*f74(x,y);k1=h*f74(x+h/2.0,y+k0/2.0)
            k2=h*f74(x+h/2.0,y+k1/2.0);k3=h*f74(x+h,y+k2)
            y=y+(k0+2.0*k1+2.0*k2+k3)/6.0;x=x+h
        if (abs(ystar[nsteps]-yb)/yb)<tol:
            print(' x              y')
            for i in range(0,nsteps+1):
                print('{:9.5e}'.format(xa+i*h),end='  ')
                print('{:9.5e}'.format(ystar[i]))
            print('迭代到收敛次数',iters)
            break
        if (ystar[nsteps]-yb)*(y0[nsteps,0]-yb)>0:
            y0[:,0]=ystar;a0[0]=astar
        else:
            y0[:,1]=ystar;a0[1]=astar
    
            
    
    

    终端输出结果如下
    在这里插入图片描述

    展开全文
  • 收稿日期:--
  • 用于求解常微分方程边值问题的求解,具体请参看程序
  • matlab四阶龙格库塔+打靶法

    千次阅读 2019-06-25 21:05:16
    打靶法是解决边界值问题(BVP),Newton-Raphson 的shooting method 通过逐渐逼近的方法来确定初始值的算法,relaxing method 来修正以满足收敛条件和边界条件. matlab数值计算 MATLAB中floor、round、ceil、fix...
  • 打靶打10次,打中90环的可能性有多少? 用回溯实现: 控制台输出: 递归实现:打10次90环的可能性:92378种 迭代实现:打10次90环的可能性:92378种 package AlgorithmTest; import java.util....
  • 关于识别热传导方程中移动边界问题的李群打靶方法,李彦辉,,热传导方程中的移动边界的识别问题是不适定问题,本文利用化曲为直的思想,通过李群打靶法解决此问题。数值算例表明李群打靶法
  • 关于识别Robin系数的李群打靶方法,李彦辉,,热传导方程中的Robin系数的识别问题是不适定问题,本文用李群打靶法解决此问题,该方法有两方面的优点:一方面,不需要先验信息;�
  • 关于识别与空间有关的逆热源问题的李群打靶方法,李彦辉,,热传导方程中热源的识别问题是不适定问题,本文用李群打靶法解决此问题,此方法不需要先验信息,也不需要迭代。数值算例表明李群
  • 针对打靶法中打靶点寻找困难的问题,提出了一种改进的粒子群算法。该方法将粒子适应度定义为终点状态的目标优化函数,并通过人工神经网络建立微分方程组的初始状态与终点状态的映射来提高运行速度。针对打靶点要求...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 530
精华内容 212
关键字:

打靶法