matlab:对带参数a关于x的方程求解

星途码客 2024-07-10 13:35:03 阅读 72

题目

讲解

简洁对各个式子的内部含义用浅显易懂的话语总结出来了,耐心体会

<code>f=@(a) @(x)exp(x)+x^a+x^(sqrt(x))-100;%因为下面的fzero的第一个数需要一个fun,所以这里有两个句柄@,第一个a是输入的,第二个x是需要被解出的

A=0:0.1:2;%创建一个以0.1为间隔的0到2的数组

x=@(a)fzero(f(a),3);%这步想创建一个x(a),可以直接解出在a点的对应的值(到这里可以看出,想解一个二元函数,需要先写一个已知传入的f函数,其中

% 内部包含两个句柄@,第一个是可以传入的a,第二个是待解的。而此刻再写第二个匿名函数,直接用fzero()解出来f的fun函数即可,

% 至于第二个位置上的3,只是预测值,使用即使是其他的也没事,无关紧要),a是可以传入的,然后里面套一个

X=@(B) arrayfun(@(b) x(b),B);%这里想创建一个X(A),可以对集合的每个元素使用x的fun函数。因为是对集合,使用句柄@后面用的是一个B(表示集合),

%想要对集合每个元素用一个fun函数,需要用到arrayfun函数其中内部第一个需要再定义一个句柄@b(其实这就是一个个接收集合B的每个元素),然后用这个b

%赋值给x(b),供x()函数使用

X(A)



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。