24小时热门版块排行榜    

CyRhmU.jpeg
查看: 4315  |  回复: 8
本帖产生 1 个 计算强帖 ,点击这里进行查看

043114076

木虫 (正式写手)

[求助] 三点支撑一个平面,最稳定的方案??

使用三个支点去支撑一个平面,如何使这个平面最稳定。我尝试了一下,好像需要积分和微分。不知各位有没有更简单的解法?

以正方形为例,我感觉下面这个方案是最优解,不过我不能证明。

其中x等于[3-sqrt(5)]/2,即处在黄金分割点。(神奇的黄金分割)

希望大侠给个一般的通解和证明。
回复此楼

» 收录本帖的淘帖专辑推荐

matlab典型案例

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖置顶 ( 共有1个 )

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
043114076: 金币+10, ★★★很有帮助, 谢谢,非常详细。 2012-07-03 17:47:21
dbb627: 金币+5, 计算强帖+1, 感谢应助 2012-07-03 20:29:01
刚有点错误,第34行 rp3=dis(A3,C3,-1,1);

方法如图
对不同的x,y(stabledesk2中的x0),拟合1,2,3三条直线,选择三个顶点分别计算其相对于三条直线的力矩,失稳条件为施力点所对的点受力为零,此时以最近的边为轴,重力和施力点应该力矩平衡,因此只需要计算保证施力点对最近边的力矩与重力对该边的力矩之比最小就可以保证可施加力最大。但是对于3个边随着xy的变化,其力矩变化,对于固定的xy,应选取最大的施力力矩,以保证计算的是失稳时所施加的最小力。即fun1函数中,计算的r应该取3个点对3条边的力矩(即距离)最大值。

经计算
a =
    0.8284
    0.8284

ans =
    1.4142

即图中的x,y均为0.8284,其中正方形边长为2,如果对应边长为1即是sqrt(2)-1,此时力矩比为1.414
如果按lz选取黄金分割点,力矩比为1.6178,略大


showmethemoney
8楼2012-07-03 15:40:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

cheersend

至尊木虫 (著名写手)

难道不是应该先给出“稳定”的定义的吗?
2楼2012-06-28 12:43:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

043114076

木虫 (正式写手)

引用回帖:
2楼: Originally posted by cheersend at 2012-06-28 12:43:28
难道不是应该先给出“稳定”的定义的吗?

这就好象一个三条腿的桌子,在桌子任意一点施加压力,桌子所能承受的压力越大(而不倒掉)就越“稳定”。
3楼2012-06-28 14:22:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luo000

木虫 (正式写手)

我想知道为什么有个点在顶点处呢
4楼2012-06-28 16:35:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

luo000

木虫 (正式写手)

会不会是因为三角形外的其它区域形成的三个三角形,面积相等所以重量相等的原因呀
5楼2012-06-28 16:37:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

043114076

木虫 (正式写手)

引用回帖:
5楼: Originally posted by luo000 at 2012-06-28 16:37:51
会不会是因为三角形外的其它区域形成的三个三角形,面积相等所以重量相等的原因呀

谢谢回复。
面积确实相等,我那个图只是示意,并不一定是最后的答案
6楼2012-06-28 19:23:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
043114076: 金币+10, ★★★很有帮助, 膜拜!先评分,再仔细学习。 2012-07-03 17:46:49
经证明,按lz的思路,一边的两端以及对边的中点为三个顶点的三角形是最稳定的。
这里只计算了点都在边线上的情况
如下计算结果为
a =
    1.0000
    0.0000
ans =
    2.0000
此结果表明lz的两个x一个取1,一个取0
ans=2,表明此时F点对相应边的最大力矩为重力矩的两倍,即最大施加力为重力的一半。
请高手斧正!
CODE:
function stabledesk2
clc
clear
x0=rand(2,1);  %x,y
ub1=[1-eps;1-eps];
lb1=[eps;eps];
a=fmincon(@fun1,x0,[],[],[],[],lb1,ub1)
%a=x0;
fun1(a)
end

function ra=fun1(x)

[A1,C1]=solve(fun2([1;x(1)-1],[x(2)-1;1]),'A','C');
ro1=dis(A1,C1,0,0);
rp1=dis(A1,C1,1,1);

if x(1)<=1e-6
    ro2=1;
    rp2=0;
else
[A2,C2]=solve(fun2([1;x(1)-1],[-1;-1]),'A','C');
ro2=dis(A2,C2,0,0);
rp2=dis(A2,C2,1,-1);
end

if x(2)<=1e-6
    ro3=1;
    rp3=0;
else
    [A3,C3]=solve(fun2([-1;-1],[x(2)-1;1]),'A','C');
    ro3=dis(A3,C3,0,0);
    rp3=dis(A2,C2,-1,1);
end

ra=double(max(max(double(rp1/ro1),double(rp2/ro2)),double(rp3/ro3)));
end


function lineq=fun2(x,y)
syms A C
[x,y];
lineq=[A*x(1)+x(2)+C;A*y(1)+y(2)+C];

end

function r=dis(A,C,x0,y0)
r=abs(A*x0+y0+C)/sqrt(A^2+1);
end

showmethemoney
7楼2012-07-03 15:06:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kingkongking

版主 (知名作家)

酒逢知己千杯少

不懂。我就进来膜拜一下行么...牛批呀。
生活就是这么精彩,这么刺激~··
9楼2012-07-05 13:54:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 043114076 的主题更新
信息提示
请填处理意见