matlab画出三角函数图像_matlab二元函数绘图

matlab画出三角函数图像_matlab二元函数绘图在matlab中绘制二元函数图像矩形区域上的绘制考虑f(x,y)=2×2+2y2+4xy−3y−3x+1f(x,y)=2x^2+2y^2+4xy-3y-3x+1f(x,y)=2×2+2y2+4xy−3y−3x+1在矩形区域[0,1]×[0,1][0,1]\times[0,1][0,1]×[0,1]上的图像。直接上代码:%meshf(x,y)onacertaindomainclear;clc;%generatedomainX=0:

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

在matlab中绘制二元函数图像

矩形区域上的绘制

考虑 f ( x , y ) = 2 x 2 + 2 y 2 + 4 x y − 3 y − 3 x + 1 f(x,y)=2 x^2 + 2 y^2 + 4 x y – 3 y – 3 x + 1 f(x,y)=2x2+2y2+4xy3y3x+1 在矩形区域 [ 0 , 1 ] × [ 0 , 1 ] [0,1]\times[0,1] [0,1]×[0,1] 上的图像。
这个应该大家都会,直接上代码:

% mesh f(x,y) on a certain domain

clear;  clc;
% generate domain
X = 0:0.01:1;
Y = 0:0.01:1;
[x,y] = meshgrid(X,Y);

% input f
f = 2 * x.^2 + 2* y.^2 + 4 * x.* y - 3 * y - 3 * x + 1;

% figure
figure
mesh(x,y,f)

在这里插入图片描述

三角形区域上的绘制

上文中的函数 f f f 有个特殊的性质,在 x 1 = ( 0 , 0 ) , x 2 = ( 1 , 0 ) , x 3 = ( 0 , 1 ) x_1=(0,0), x_2=(1,0),x_3=(0,1) x1=(0,0),x2=(1,0),x3=(0,1) 构成的一个三角形区域上,记 x 4 = ( 1 / 2 , 0 ) , x 5 = ( 1 / 2 , 1 / 2 ) , x 6 = ( 0 , 1 / 2 ) x_4=(1/2,0),x_5=(1/2,1/2),x_6=(0,1/2) x4=(1/2,0),x5=(1/2,1/2),x6=(0,1/2),有 f ( x 1 ) = 1 , f ( x i ) = 0 , ∀ i ≠ 1 f(x_1)=1,f(x_i)=0,\forall i\ne1 f(x1)=1,f(xi)=0,i=1.
实际上, f f f 是这个三角形单元上的一个2次Lagrange型基函数,所以我们更需要的是 f f f 在这个三角形区域上而非是整个矩形区域上的图像。所以我考虑使用NaN对我不需要的区域部分进行填充,最后就能得到相应区域的图像。

对于上文程序中的 generate domain 部分进行一定的修改:

% generate domain
X = 0:0.01:1;
Y = 0:0.01:1;
[x,y] = meshgrid(X,Y);
for i = 1:length(X)
    for j = 1:length(Y)
        if i + j > length(X)+1
            x(i,j) = NaN;
            y(i,j) = NaN;
        end
    end
end

在这里插入图片描述
这就得到了我们需要的效果。

总结

这里只是一个非常简单的例子,利用这个方法,对于更一般的一些区域,也能通过这个方法画出我们所需要的区域上的图像。

菜鸟发文,望大佬们轻喷。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/196370.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号