Matlab:椭圆方程的导数边值问题





tic;
clear
clc
N=;
M=*N;
h1=/M;
h2=/N;
x=:h1:;
y=:h2:;
fun=inline('exp(x)*sin(pi*y)','x','y');
f=inline('(pi^2-1)*exp(x)*sin(pi*y)','x','y');
lamda1=inline('','y');
lamda2=inline('2*y','y');
lamda3=inline('2*x','x');
lamda4=inline('x^2','x');
kesai1=inline('','y');
kesai2=inline('exp(2)*(1+2*y)*sin(pi*y)','y');
kesai3=inline('-pi*exp(x)','x');
kesai4=inline('-pi*exp(x)','x');
numerical=zeros(M+,N+);
Numerical=numerical;
error=eye(M+,N+);
while norm(error,inf) >= 1e-
for j=:N+
for i=:M+
if i== & j==
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i+,j)+/h2^*numerical(i,j+)+/h1*kesai1(y(j))+/h2*kesai3(x(i)))...
/(/h1^+/h2^+/h1*lamda1(y(j))+/h2*lamda3(x(i)));%U(,)
elseif i==M+ & j==
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h2^*numerical(i,j+)+/h1*kesai2(y(j))+/h2*kesai3(x(i)))...
/(/h1^+/h2^+/h1*lamda2(y(j))+/h2*lamda3(x(i)));%U(m,)
elseif i== & j==N+
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i+,j)+/h2^*numerical(i,j-)+/h1*kesai1(y(j))+/h2*kesai4(x(i)))...
/(/h1^+/h2^+/h1*lamda1(y(j))+/h2*lamda4(x(i)));%U(,n)
elseif i==M+ & j==N+
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h2^*numerical(i,j-)+/h1*kesai2(y(j))+/h2*kesai4(x(i)))...
/(/h1^+/h2^+/h1*lamda2(y(j))+/h2*lamda4(x(i)));%U(m,n)
elseif i== & j>= & j<=N % 0j
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i+,j)+/h2^*numerical(i,j-)+/h2^*numerical(i,j+)+/h1*kesai1(y(j)))...
/(/h1^+/h2^+/h1*lamda1(y(j)));
elseif j== & i>= & i<=M % i0
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h1^*numerical(i+,j)+/h2^*numerical(i,j+)+/h2*kesai3(x(i)))...
/(/h1^+/h2^+/h2*lamda3(x(i)));
elseif i==M+ & j>= & j<=N % mj
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h2^*numerical(i,j-)+/h2^*numerical(i,j+)+/h1*kesai2(y(j)))...
/(/h1^+/h2^+/h1*lamda2(y(j)));
elseif j==N+ & i>= & i<=M % in
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h1^*numerical(i+,j)+/h2^*numerical(i,j-)+/h2*kesai4(x(i)))...
/(/h1^+/h2^+/h2*lamda4(x(i)));
else
Numerical(i,j)=(f(x(i),y(j))+/h1^*numerical(i-,j)+/h2^*numerical(i,j-)+/h1^*numerical(i+,j)+/h2^*numerical(i,j+))...
/(/h1^+/h2^);
end
end
end
error=Numerical-numerical;
numerical=Numerical;
end
for i=:length(x)
for j=:length(y)
Accurate(i,j)=fun(x(i),y(j));
end
end
Error=Accurate'-Numerical';
[X,Y]=meshgrid(x,y);
subplot(,,)
mesh(X,Y,Accurate');
xlabel('x');ylabel('y');zlabel('Accurate');
grid on
subplot(,,)
mesh(X,Y,Numerical');
xlabel('x');ylabel('y');zlabel('Numerical');
grid on
subplot(,,)
mesh(X,Y,Error);
xlabel('x');ylabel('y');zlabel('error');
grid on
toc;

Matlab:椭圆方程的导数边值问题的更多相关文章
- Matlab:五点差分方法求解椭圆方程非导数边值问题
差分格式脚本文件: tic; clear clc M=32;%x的步数 N=16;%y的步数 h1=1/M;%x的步长 h2=1/N;%y的步长 x=0:h1:1; y=0:h2:1; u=zeros ...
- matlab 椭圆方程拟合
拟合椭圆首先要知道各个点的坐标,然和带入如下公式: x = [59 136 58 137 57 137 56 137 55 138 54 139 53 140 52 141 51 142 51 143 ...
- MATLAB学习笔记(七)——MATLAB解方程与函数极值
(一)线性方程组求解 包含n个未知数,由n个方程构成的线性方程组为: 其矩阵表示形式为: 其中 一.直接求解法 1.左除法 x=A\b; 如果A是奇异的,或者接近奇异的.MATLAB会发出警告信息的. ...
- MATLAB求解方程与方程组
1. solve函数 ①求解单个一元方程的数值解 syms x; x0 = double(solve(x +2 - exp(x),x)); 求x+2 = exp(x)的解,结果用double ...
- MATLAB符号极限、导数及级数求和
作者:长沙理工大学 交通运输工程学院 王航臣 1.函数的极限 函数:limit 功能:求取函数的极限 语法: limit(f) limit(f,x,a) limit(f,x,a,'right') li ...
- matlab解方程
[x1,y1,x2,y2]=solve('x1^2 + y1^2=1','x2^2-8*x2 +y2^2 +15=0','x1*x2 + y1 * y2=1','x1 + x2 =a','x1','y ...
- 关于CC的完全非线性椭圆方程一书的一些小结
CC的整本书主要是想要研究在粘性解的框架下的一致椭圆方程解的正则性.我们试着一章一章来解析他. 序言部分也是值得每一个字细读的,主要讲述了他们的工作的主要内容,即在粘性解的框架下研究解的正则性,需要特 ...
- 编程类-----matlab基础语法复习(1)
2019年美赛随笔记录: 具体功能:基础语法+基本运算+画图+矩阵+excel读取....... 所遇问题及其解决方案: 1. que:matlab中plot画图无法复制下来图片? ...
- MATLAB实现一个EKF-2D-SLAM(已开源)
1. SLAM问题定义 同时定位与建图(SLAM)的本质是一个估计问题,它要求移动机器人利用传感器信息实时地对外界环境结构进行估计,并且估算出自己在这个环境中的位置,Smith 和Cheeseman在 ...
随机推荐
- repo 获取各个库的tag代码或者分支代码
关于mainfest.xml中的参数格式和说明,可以自己查阅,此处不详细写,我们知道project中的reversion可以指定分支,tag,commitid等,那么如何书写呢? 首先克隆mainfe ...
- go语言的安装与开发环境
安装golang编译器: https://studygolang.com/dl 之后设置环境变量GOPATH(项目目录) GOROOT(默认已经设置好) 安装编辑器:IDEA安装和破解 https: ...
- stl string的erase方法
; i < s.size(); i++) { ') { s.erase(i,); i--; } } 删除string中的所有0.
- IdentityServer4授权和认证对接数据库
接着上一篇讲:https://www.cnblogs.com/nsky/p/10352678.html 我们之前都是用in-men的方式把数据添加到内存了,目的是为了测试方便, 现在我们把所有配置都添 ...
- Javascript根据id获取数组对象
在业务中,列表页跳转详情页时,经常会将Id值传入,然后再根据id值异步获取数据. 假设有服务端的json数据: <注意,这里的data是指已经从后端获取的json, 而非后端原始的文件> ...
- 什么是CONTAINERD?
之前我们已经围绕containerd的不同功能,设计方式,以及解决的一些问题进行了几次讨论. Containerd由Docker,Kubernetes CRI和其他几个项目使用,不过这个帖子是写给可能 ...
- tiny6410采用sd卡烧写的问题
今天想用32G的SD卡来烧写tiny6410的uboot但是失败了,换了一张4G的卡就可以了, 还有sd卡启动的uboot使用tftp命令是有问题的
- tomcat的jks的私钥导出nginx需要的key文件
方法一: 1.先用keytool导出pfx文件.第一个123456是jks密码,后边两个是新生成的pfx的密码 keytool -v -importkeystore -srckeystore D:\\ ...
- K8S学习笔记之k8s日志收集实战
0x00 简介 本文主要介绍在k8s中收集应用的日志方案,应用运行中日志,一般情况下都需要收集存储到一个集中的日志管理系统中,可以方便对日志进行分析统计,监控,甚至用于机器学习,智能分析应用系统问题, ...
- 【 记忆网络 1 】 Memory Network
2015年,Facebook首次提出Memory Network. 应用领域:NLP中的对话系统. 1. 研究背景 大多数机器学习模型缺乏一种简单的方法来读写长期记忆. 例如,考虑这样一个任务:被告知 ...