求教:如何用matlab求解超越方程tanh(x)=tan(x),它有很多个解,怎么一一列出来?为什么我用solve(‘tanh(x)=tan(x)’,‘x’)老是得到答案是0,

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/02 14:50:19
求教:如何用matlab求解超越方程tanh(x)=tan(x),它有很多个解,怎么一一列出来?为什么我用solve(‘tanh(x)=tan(x)’,‘x’)老是得到答案是0,
xՒOP,t?–=B P >u2:%Hٜĉ11 {v(H,9{;u}ø*GiNA\tyi^#ۭQID:`":V7P"GM wKw0c4/ |NBѯڀl #ZuAR &SzwR!:w\L}< WXyհ`QF? &.װK n 柶1s2!t!)[Ixu;̄*e>+ |o'qNsyD/˒]E{b'+׬Jc|i068 9}Rp O{7ӹ 'GOodiz]H9;&iS3y䇋su^ q g«~̲aV^˫ޗԪ!qY

求教:如何用matlab求解超越方程tanh(x)=tan(x),它有很多个解,怎么一一列出来?为什么我用solve(‘tanh(x)=tan(x)’,‘x’)老是得到答案是0,
求教:如何用matlab求解超越方程tanh(x)=tan(x),
它有很多个解,怎么一一列出来?为什么我用solve(‘tanh(x)=tan(x)’,‘x’)老是得到答案是0,

求教:如何用matlab求解超越方程tanh(x)=tan(x),它有很多个解,怎么一一列出来?为什么我用solve(‘tanh(x)=tan(x)’,‘x’)老是得到答案是0,
数值解法只能得到一个解,想得到不同解必须改变初始解.例如:
clear all; close all;
f1 = @(x) tan(x);
f2 = @(x) tanh(x);
eqn = @(x) f1(x)-f2(x);
result_x1 = fzero(eqn,4) % 初始解4
result_y1 = f1(result_x1)
result_x2 = fzero(eqn,7) % 初始解7
result_y2 = f1(result_x2)
不断改变初始解就可以得到不同的解

http://zhidao.baidu.com/link?url=rCTD9IvxExKaxOl9hShLTBjhwshmFtB4V4rZDux7XqkjtlUmKnWh9ZAc5__HVWVb1MS3rEGakhy4Udqv7deo5K