24小时热门版块排行榜    

查看: 1389  |  回复: 7

luohubin

木虫 (正式写手)

[交流] 【求助】解方程组的错误 已有5人参与

大家好,我刚接触matlab,想求两条曲线的公切线方程,写了代码如下
function s=comtan(p)
syms x1 x2;
a=p(1);
b=p(2);
c=p(3);
d=p(4);
e=p(5);
g=p(6);
h=p(7);
i=p(8);
j=p(9);
k=p(10);
f1=a+b*exp(c*x1^0.3333334)+d*exp(e*x1^0.3333334);
f2=g+h*exp(i*x2^0.3333334)+j*exp(k*x2^0.3333334);
df1=diff(f1,x1);
df2=diff(f2,x2);
A1=simplify((f2-f1)/(x2-x1)-df1);
A2=simplify(df2-df1);
[x1,x2]=solve(A1,A2);
s=[x1,x2];

但是总提示我Error: Unexpected MATLAB expression,找不到错误,请大家帮忙,如果有更好的求公切线方程的方法希望能指点一下
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

消愁无计对金樽
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ctgu_zheng

专家顾问 (著名写手)



nono2009(金币+1):鼓励应助。 2010-07-29 17:22:26
luohubin(金币+2):这些语句其实是要求出两条曲线f1,f2的两个公切点,结果是要得到两个点的横坐标x1,x2. 至于solve,应该没问题,用help solve可以找到范例,网上不少人也这样用。还是感谢! 2010-07-29 18:09:08
程序我看了会
公切线方程没太明白到底是什么方程;
符号运算 simplify好像用的不太多;
然后 solve命令也不对 如果是想求A1=0,A2=0的解的话
应该是这样的 [x1,x2]=solve('A1=0','A2=0');
2楼2010-07-29 16:15:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

icyspace

金虫 (小有名气)

luohubin(金币+2):啊?是吗?我用comtan(1:1:10)怎么没反应?不是这样输入吗? 2010-07-30 21:48:27
我运行了下,感觉挺正常的啊~我舍 p=1:1:10;可以得到结果的~
3楼2010-07-30 14:44:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
adu886886:专业版块请勿灌水,首次警告,下不为例! 2010-07-30 17:02:30
4楼2010-07-30 15:17:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

icyspace

金虫 (小有名气)


robert2020(金币+1):鼓励应助!欢迎常来仿真模拟版交流! 2010-08-03 00:53:48
luohubin(金币+1):谢谢 2010-08-04 09:12:51
试试这个

p=1:10;comtan(p);

[ Last edited by icyspace on 2010-7-31 at 13:23 ]
5楼2010-07-31 13:21:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

robert2020

银虫 (著名写手)

luohubin(金币+2): 2010-08-04 09:10:19
使用comtan(1:1:10)可以运行(matlab7.0),把*.m文件最后一句“s=[x1,x2];”中的“;”去掉就会出结果
引用回帖:
Originally posted by luohubin at 2010-07-29 14:54:19:
大家好,我刚接触matlab,想求两条曲线的公切线方程,写了代码如下
function s=comtan(p)
syms x1 x2;
a=p(1);
b=p(2);
c=p(3);
d=p(4);
e=p(5);
g=p(6);
h=p(7);
i=p(8);
j=p(9);
k=p(10);
f1=a+b* ...

Truthfulness,Compassion,Tolerance,Beauty
6楼2010-08-03 00:53:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luohubin

木虫 (正式写手)

还是有问题

引用回帖:
Originally posted by robert2020 at 2010-08-03 00:53:00:
使用comtan(1:1:10)可以运行(matlab7.0),把*.m文件最后一句“s=[x1,x2];”中的“;”去掉就会出结果


版主,还是有问题啊,我是 R2010版本,看你说的做了,下面是出来的信息
Warning: Explicit solution could not be found.
> In solve at 81
  In comtan at 19

s =

[ empty sym ]


ans =

[ empty sym ]
这是哪里出问题了呢?
消愁无计对金樽
7楼2010-08-04 09:11:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

robert2020

银虫 (著名写手)

luohubin(金币+1):已经很感谢了,本来想多给金币,没想到不能增加,不好意思 2010-08-07 16:19:07
楼主,不好意思,偶没有装2010版的,不太清楚是何问题;
自己以前编过一个求半圆切线方程的程序,希望对楼主有所帮助。
引用回帖:
% 求两个半圆的公切线
clc;clear all;close all
syms x
y1=sqrt(1-x.^2);
y2=2-sqrt(1-x.^2);
% 求导
y11=diff(y1,x);
y22=diff(y2,x);
% 求切线斜率 k0 及切点坐标(x0,y0)
f1=y2-y1;
f2=y22-y11;
x0=solve(f1);
k0=solve(f2);
y0=subs(y1,x0);
y=k0*x+y0; % 切线方程
x1=-1:0.001:1; % 定义自变量
y=subs(y,x1,'r'); % 切线
y1=subs(y1,x1); % 半圆 1
y2=subs(y2,x1); % 半圆 2
% 绘图
plot(x1,y)
hold on
plot(x1,y1)
plot(x1,y2)
axis([-1 1 0 2])

引用回帖:
Originally posted by luohubin at 2010-08-04 09:11:58:

版主,还是有问题啊,我是 R2010版本,看你说的做了,下面是出来的信息
Warning: Explicit solution could not be found.
> In solve at 81
  In comtan at 19

s =

[ empty sym ]


ans =
...

Truthfulness,Compassion,Tolerance,Beauty
8楼2010-08-04 13:28:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 luohubin 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 只有每年这种时候来逛逛小木虫 +22 yaoyewhu2008 2026-08-20 23/1150 2026-08-21 07:19 by sincosx
[基金申请] 估计是周四 +3 archvillain 2026-08-18 3/150 2026-08-21 01:48 by jnhyjjm
[基金申请] 基金啊基金 +3 longfie172 2026-08-20 3/150 2026-08-21 00:04 by wuchongjun
[基金申请] 让我中一个面上吧! +8 大萍1987 2026-08-20 10/500 2026-08-20 21:48 by 大萍1987
[基金申请] 言之凿凿,明天官网会通知放榜? +15 医学老男孩 2026-08-20 17/850 2026-08-20 20:35 by CaoLG
[基金申请] 时间戳又变了 +12 wuchongjun 2026-08-20 17/850 2026-08-20 20:05 by spzhao
[基金申请] 今天系统多次维护,明天很可能放榜! +10 zju2000 2026-08-16 11/550 2026-08-20 20:02 by cl479861084
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 今天基金会出结果吗?20260819 +14 kkkl_v 2026-08-19 15/750 2026-08-20 08:21 by sunzitan
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见