如何定义函数?
能否利用费马点,如果可以,如何编写代码
如何画出这22个点和费马点在经纬图的点
已知22个点的经纬度,存在一个点到这22个点的距离之和最小,用Matlab求这个点的经纬度和最小的距离
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- CSDN专家-Matlab_Fans 2021-12-01 21:37关注
可以参考早年我写的博客:
clc clear Data = [ 65.4000 28.3000 62.9000 34.9000 39.5000 49.9000 43.3000 49.3000 28.5000 32.9000 75.3000 41.0000 52.8000 30.2000 57.5000 37.3000 67.9000 26.9000 79.2000 23.1000 21.3000 38.1000 62.8000 24.1000 54.5000 50.8000 75.2000 26.4000 70.7000 27.7000 71.1000 51.6000 63.5000 24.5000 69.3000 38.8000 42.0000 43.1000 57.2000 42.3000 76.8000 31.4000 76.2000 27.8000 95.2000 34.1000 93.0000 33.8000 38.9000 65.3000 43.5000 49.7000 66.0000 45.8000 64.3000 52.9000 55.4000 56.4000 73.2000 27.8000 18.5000 45.5000 24.0000 39.6000 27.0000 55.6000 38.0000 72.4000 67.2000 65.3000 94.0000 17.5000 50.2000 43.8000 40.1000 66.0000 ]; fun = @(x) sum( sqrt ( ( x(1)-Data(:,1) ).^2 + ( x(2)-Data(:,2) ).^2 ) ); % 以距离和为目标函数 x0(1) = mean(Data(:,1)); % 以横坐标平均值为横坐标初始值 x0(2) = mean(Data(:,2)); % 以横坐标平均值为横坐标初始值 x1 = fminsearch(fun,x0); % 优化函数fun,找出最小值 plot(Data(:,1),Data(:,2),'o') % 画出30个离散点 hold on plot(x1(1),x1(2),'r*','LineWidth',5) % 画出最优点 y1 = fun(x1); % 求解最优点距离平方和 for ii = 1:length(Data) line([x1(1) Data(ii,1)],[x1(2) Data(ii,2)],'color','k') end text(x1(1),x1(2),['最短距离和为:' num2str(y1)] ) % 输出最优值提示 legend('数据点','最优点','最优点与给定点连线') % 标注 juli = sqrt ( ( x1(1)-Data(:,1) ).^2 + ( x1(2)-Data(:,2) ).^2 ); disp(' X: Y: 距离: ') A = [Data,juli]; disp(A)
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 x趋于0时tanx-sinx极限可以拆开算吗
- ¥500 把面具戴到人脸上,请大家贡献智慧
- ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
- ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
- ¥30 c#打开word开启修订并实时显示批注
- ¥15 如何解决ldsc的这条报错/index error
- ¥15 VS2022+WDK驱动开发环境
- ¥30 关于#java#的问题,请各位专家解答!
- ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
- ¥20 pcf8563时钟芯片不启振