clear;clc
%%%%%%%%%%%%方程里的参量%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
alpha=0.5;beta=0.5;
%%%%%%%%%%%%%%%%%%%%%%%%%%网格划分%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
L=1;%区间x的长度
h=0.1; %划分小区间 Delta x的长度
Mx=L/h; %划分的份数
x=[1:Mx-1]*h; %得到 x 的网格值注意是去掉 x=0 和 x=1 的.[1,Mx-1]
tau=h;
N=10; % 时间 t 的层数
t=[1:N]*tau; %时间t的网格点
%%%%%%%%%%%%%%%%%%%%系数矩阵里的参数定义%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
R=(tau^alpha)*(gamma(2-alpha))/(h*h);
for j=1:Mx-1
r(j)=beta*R/j;
end
r;
%%%%%%%%%%%%%%%%%%%%%%%%分数阶系数矩阵%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
v0=1+2*R-r; %主对角线上元素
A=diag(v0);
v1=r-R ;
v1=v1(2:end);%下次对角线上的元素
B=diag(v1,-1);
v3=-R*ones(1,Mx-2); %上次对角线上的元素
C=diag(v3,1);
D=A+B+C;
E=inv(D);
%%%%%%%%%%%%%%%%%非齐次项f(x,t)构成的矩阵%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for k=1:N-1
for j=1:Mx-1
f(k,j)=(t(k).^(1-alpha))*(sin(pi*x(j)))/gamma(2-alpha)-pi*t(k)*(beta*cos(pi*x(j))/x(j)-pi*sin(pi*x(j)));
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%递推关系%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for k=1:N
w(k)=(1+k)^(1-alpha)-k^(1-alpha);
end
for k=1:N-1
d(k)=w(k)-w(k+1);
end
u(1,:)=E*((tau^alpha)*gamma(2-alpha)*f(1,:))';
u(2,:)=E*((1-w(1))*u(1,:)+(tau^alpha)*gamma(2-alpha)*f(2,:))';
for n=2:N-2
for k=1:n-1
s(k,:)=d(n-k)*u(k,:);
end
u(n+1,:)=E*((1-w(1))*u(n,:)+sum(s(1:n-1,:),1)+(tau^alpha)*gamma(2-alpha)*f(n+1,:))';
end
u;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%计算误差%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for k=1:N-1
for j=1:Mx-1
e(k,j)=u(k,j)-t(k)*sin(pi*x(j));
end
end
err=max(max(abs(e))) %最大误差
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%画图u(x,t)%%%%%%%%%%%%%%%%%%%%%%%%%%

MATLAB代码的更多相关文章

  1. 如何加速MATLAB代码运行

    学习笔记 V1.0 2015/4/17 如何加速MATLAB代码运行 概述 本文源于LDPCC的MATLAB代码,即<CCSDS标准的LDPC编译码仿真>.由于代码的问题,在信息位长度很长 ...

  2. 多分类问题中,实现不同分类区域颜色填充的MATLAB代码(demo:Random Forest)

    之前建立了一个SVM-based Ordinal regression模型,一种特殊的多分类模型,就想通过可视化的方式展示模型分类的效果,对各个分类区域用不同颜色表示.可是,也看了很多代码,但基本都是 ...

  3. 卷积相关公式的matlab代码

    取半径=3 用matlab代码实现上式公式: length=3;for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj,K ...

  4. JAVA调用matlab代码

    做实验一直用的matlab代码,需要嵌入到java项目中,matlab代码拼拼凑凑不是很了解,投机取巧采用java调用matlab的方式解决. 1.    matlab版本:matlabR2014a ...

  5. 调试和运行matlab代码(源程序)的技巧和教程

    转载请标明出处:专注matlab代码下载的网站http://www.downma.com/ 本文主要给大家分享使用matlab编写代码,完成课程设计.毕业设计或者研究项目时,matlab调试程序的技巧 ...

  6. 直方图均衡化与Matlab代码实现

    昨天说了,今天要好好的来解释说明一下直方图均衡化.并且通过不调用histeq函数来实现直方图的均衡化. 一.直方图均衡化概述 直方图均衡化(Histogram Equalization) 又称直方图平 ...

  7. 将labelme 生成的.json文件进行可视化的代码+label.png 对比度处理的matlab代码

    labelme_to_dataset 指令的代码实现: show.py文件 #!E:\Anaconda3\python.exe import argparse import json import o ...

  8. SVM实例及Matlab代码

    ******************************************************** ***数据集下载地址 :http://pan.baidu.com/s/1geb8CQf ...

  9. Latex中Matlab代码的环境

    需要用到listings宏包 使用方法: 导言区\usepackage{listings}\lstset{language=Matlab}      %代码语言使用的是matlab\lstset{br ...

  10. Frequency-tuned Salient Region Detection MATLAB代码出错修改方法

    论文:Frequency-tuned Salient Region Detection.CVPR.2009 MATLAB代码运行出错如下: Error using makecform>parse ...

随机推荐

  1. Oracle 数据库整理表碎片

    Oracle 数据库整理表碎片 转载:http://kyle.xlau.org/posts/table-fragmentation.html 表碎片的来源 当针对一个表的删除操作很多时,表会产生大量碎 ...

  2. LT1619EMS8 锂电池 升压电路分析

    LT1619EMS8 锂电池 升压电路分析 本文主要是分析LT1619EMSB锂电池升压芯片电路,知道其大致是怎么工作的,其中的一些电阻该如何配置. 2016-1-23 深圳 南山平山村 曾剑锋 一. ...

  3. cbitmap 获取RGB CBitMap的用法

    MFC提供了位图处理的基础类CBitmap,可以完成位图(bmp图像)的创建.图像数据的获取等功能.虽然功能比较少,但是在对位图进行一些简单的处理时,CBitmap类还是可以胜任的.很多人可能会采用一 ...

  4. 编写爬虫(spider)的预备知识:用java发送HTTP请求

    使用原生API来发送http请求,而不是使用apache的库,原因在于这个第三方库变化实在太快了,每个版本都有不小的变化.对于程序员来说,使用它反而会有很多麻烦,比如自己曾经写过的代码将无法复用. 原 ...

  5. java多线程学习笔记——详细

    一.线程类  1.新建状态(New):新创建了一个线程对象.        2.就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中, ...

  6. Android欢迎界面的创建方法

    1.制作一张启动图片splash.png,放置在res->drawable-hdpi文件夹中.2.新建布局文件splash.xml <?xml version="1.0" ...

  7. UIBezierPath 贝塞尔曲线

    1. UIBezierPath * path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(30, 30, 100, 100) corner ...

  8. qt 设置背景图片

    博客出处:http://www.cppblog.com/qianqian/archive/2010/07/25/121238.htm 工作似乎走上正轨了,上周五的工作是做一个界面,用到QFrame和Q ...

  9. 将string转化为char*的方法

    在构造文件流变量时候发现,fstream的第一个参数,即文件路径必须是const char * 如: string s = "/home/user/1.txt"; fstream ...

  10. 给MyEclipse 10增加SVN功能

    1.在myeclipse的安装目录下 myeclipse 10文件夹下的 dropins文件夹新建一个文件夹 svn. 2.然后下载SVN插件:svn插件网站:http://subclipse.tig ...