概述
废话不多说,请看源程序:
clear ,clc;
format long
x=(0:0.01:100)';
y_0=besselj(0,x);
% y_1=besselj(1,x); %一阶,这里只画了0阶
% y_2=besselj(2,x); %二阶
plot(x,y_0);grid on;
axis([0,100,-1,1]);
title('0阶贝塞尔函数曲线图');
xlabel('Variable X');
ylabel('Variable Y');
%画包络线
hold on;
[up,down] = envelope(x,y_0,'spline');
plot(x, up, 'r');
plot(x, down, 'r');
其中的envelope是个单独的.m文件,是个函数,用来画包络线。说白了就是求拐点然后插值:
function [up,down] = envelope(x,y,interpMethod)
%ENVELOPE gets the data of upper and down envelope of the known input (x,y).
%
% Input parameters:
% x the abscissa of the given data
% y the ordinate of the given data
% interpMethod the interpolation method
最后
以上就是认真画笔为你收集整理的matlab 0阶贝塞尔函数,零阶一类贝塞尔函数曲线及其包络线 matlab源程序 | 学步园...的全部内容,希望文章能够帮你解决matlab 0阶贝塞尔函数,零阶一类贝塞尔函数曲线及其包络线 matlab源程序 | 学步园...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复