数学研发论坛

 找回密码
 欢迎注册
查看: 291|回复: 13

[讨论] 随机圆(球)问题

[复制链接]
发表于 2021-1-1 13:20:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?欢迎注册

x
问题A:在二(三)维空间中,给定区域 `D` 内(为简单起见,仅考虑矩形空间)随机分布 `n` 个圆(球),要求它们所处的空间没有重叠(至多相切),问
1. 若半径均为 `r`,`n` 个随机圆(球)心的坐标有什么算法能求?
这一问最直接的方法就是随机生成圆(球)心坐标,保证点与点之间距离不小于 `2r`即可。但问题是当 `n` 较大时,效率不会太高,主要是前面的圆(球)心选择自由较大,后面的选择范围小,随机搜命中率不高。

2. 若半径为 `a` 到 `b`(`0 < a < b`),如何确定这 `n` 个随机圆(球)心的坐标和各自半径大小?

继续加强——

问题B:在二(三)维空间中,给定区域 `D` 内(为简单起见,仅考虑矩形空间)随机分布若干个圆(球),要求它们所处的空间没有重叠(至多相切),问:若半径为 `a` 到 `b`(`0 < a < b`)的圆(球)容积之和占区域总容积的比例系数为 `p` (`0 < p <1`),问
是否存在合适的算法给出随机圆(球)个数及圆(球)心坐标与各自半径大小?进一步,若半径限定范围有多组,且相应比例系数之和小于1,且假设给定的范围和比例系数能够保证存在至少一组满足要求的解,那前面的算法是否也能扩展使用?

继续下去,也可以将区域 `D` 改成球形空间来重新讨论上述问题。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-1-1 14:17:31 | 显示全部楼层
这个问题我早就写过程序了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-1-1 14:19:05 | 显示全部楼层
我传图不了咋回事?

点评

这个知道,关键是传图传不上。  发表于 2021-1-3 16:01
取消右上角的“纯文本”勾选项,切换成“所见即所得模式”  发表于 2021-1-3 09:14
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2021-1-3 13:53:30 | 显示全部楼层
markfang2050 发表于 2021-1-1 14:17
这个问题我早就写过程序了。

能说一下你的算法吗?

点评

你加QQ2725875932。  发表于 2021-1-3 16:00
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-1-3 18:23:56 | 显示全部楼层
    x1         y1           z1        r
  2.7458   1.2923   1.7291   0.7447
  4.9957   3.5080   1.1639   0.7977
  2.0986   3.7244   2.0932   0.7013
  1.4434   2.8462   1.0878   0.7308
  3.2905   5.2613   2.2069   0.6433
  3.0543   2.8944   1.5164   0.6531
  0.7821   5.2322   2.0219   0.6921
  4.9616   1.9642   1.2431   0.6866
  4.3082   5.2276   1.1290   0.4703
  1.8400   2.3010   2.5075   0.4732
  3.2041   4.1244   2.4040   0.4653
  2.4333   4.4287   0.7832   0.5324
  4.2204   1.0812   1.8015   0.4319
  2.3289   0.6776   0.4218   0.4213
  5.2827   4.6992   1.8704   0.5757
  0.9349   4.0740   1.7095   0.4570
  0.6631   1.5277   1.2867   0.4435
  0.6491   2.6086   2.4623   0.4651
  3.8465   1.4022   0.6889   0.4814
  0.9986   0.9540   2.0348   0.5400
  0.5818   2.1635   0.5231   0.4866
  0.4459   4.4122   0.4239   0.4212
  4.9433   0.7976   1.0653   0.4337
  3.8143   3.9851   0.4769   0.4412
  2.2190   4.8101   1.6926   0.4316
  1.3773   0.5626   0.9135   0.4162
  5.5339   3.4812   2.3658   0.4136
  5.3362   1.8269   2.3902   0.5199
  5.5307   4.6247   0.7734   0.4629
  2.0596   1.6910   0.8668   0.4021
  4.3575   2.7058   2.1385   0.5641
  3.4948   2.2396   2.5773   0.4209
  3.8437   2.5350   0.5945   0.4162
  4.2444   4.5456   1.7283   0.4264
  1.5045   5.0871   0.9518   0.4446
  3.4582   4.9776   0.5060   0.4085
  0.4988   5.5156   0.4753   0.4106
  2.1165   0.4187   2.3855   0.4179
  4.3905   3.7578   2.4458   0.5229
  0.5134   4.1988   2.4912   0.4358
  5.1677   0.6478   2.2586   0.5978
  2.8566   3.1985   0.4575   0.4297
  2.6485   5.4488   0.5198   0.4803
  3.2670   0.5837   0.6575   0.4368
  2.2394   5.5539   2.5548   0.4406
  2.9479   2.1498   0.5990   0.4637
  4.3845   5.5347   1.9712   0.4265
  4.7986   2.5457   0.5620   0.2179
  5.4981   1.4751   0.6270   0.2485
  0.2370   4.0786   1.4267   0.2076
  5.0954   5.4146   2.5419   0.2453
  2.8451   3.2840   2.6783   0.3197
  1.1069   4.0455   0.5085   0.3158
  4.4959   4.5963   2.5305   0.2321
  4.1656   5.7696   2.7278   0.2136
  0.4613   3.4514   1.6593   0.2230
  3.8446   0.8300   2.5838   0.3489
  2.8547   4.0498   0.2551   0.2210
  0.5773   3.1945   0.7450   0.2455
  4.0107   0.5164   0.8331   0.2455
  5.0991   5.6439   0.6480   0.3358
  5.6442   2.1839   0.5232   0.2518
  1.6670   4.5059   0.6956   0.2030
  4.3922   5.0078   0.3258   0.2506
  0.2357   1.9902   2.0810   0.2021
  0.9264   0.3449   0.4158   0.2611
  3.7818   4.5906   1.1349   0.2950
  2.2142   2.3347   1.4850   0.2364
  1.6358   4.4908   1.4380   0.2614
  4.9148   1.2796   0.2778   0.2041
  0.9674   1.4853   0.6062   0.2754
  2.9109   1.2095   0.3405   0.2528
  0.2540   2.7298   0.8925   0.2331
  5.5488   2.8873   2.1750   0.2008
  2.2991   2.1045   0.3500   0.2308
  0.5956   3.7288   0.4611   0.2191
  4.0893   0.2737   1.4061   0.2215
  0.4531   0.5393   1.1473   0.2256
  3.7477   3.7106   1.5088   0.2128
  3.1494   3.8168   0.5670   0.2064
  5.2436   5.2277   1.1247   0.2241
  1.2395   3.2780   2.1857   0.2617
  1.4014   1.1927   2.7100   0.2334
  3.3469   5.6236   1.1766   0.2495
  4.9768   4.9853   0.5482   0.2251
  1.8162   2.1657   1.7577   0.2019
  3.8800   1.8437   1.6138   0.3493
  1.7885   5.2352   2.1925   0.2168
  1.1349   1.8368   2.3373   0.3434
  1.6790   3.9270   1.1079   0.3186
  2.0087   0.9555   2.7270   0.2184
  1.3722   1.1600   0.4034   0.2229
  5.0133   0.2835   0.5308   0.2507
  4.9310   1.6976   0.3548   0.2212
  4.1283   4.8962   2.6853   0.2314
  3.9699   1.4839   2.5500   0.2593
  3.6561   0.6258   1.3205   0.3142
  3.5657   0.2936   1.8616   0.2313
  5.3301   2.6438   0.2267   0.2134
  0.4591   0.3248   2.5737   0.2732
  5.6628   0.8565   0.6230   0.3021
  2.8914   4.4018   1.4949   0.2729
  4.5857   5.1334   2.6995   0.2771
  0.4042   3.1230   2.0602   0.2186
  4.0149   5.5131   0.3437   0.2740
  4.6871   4.5766   0.6794   0.2360
  4.2378   0.4030   2.3465   0.2055
  0.2254   3.7138   2.0034   0.2136
  1.5158   5.6116   0.2589   0.2121
  5.3811   5.5125   1.6930   0.2369
  2.7451   0.5604   2.6483   0.2507
  3.6080   4.7390   1.6018   0.2042
  3.3998   3.4363   2.7424   0.2525
  1.5308   4.4682   2.3948   0.2041
  0.4584   0.9986   0.5339   0.3684
  4.9952   4.4369   2.6768   0.2748
  2.8724   5.5280   1.2506   0.2017
  0.4601   1.2426   2.6450   0.2476
  4.6496   0.5385   1.5925   0.2115
  0.4190   4.7904   1.1657   0.3373
  1.9433   5.7009   1.1680   0.2448
  2.2702   2.8365   2.6982   0.2157
  1.6089   1.0761   1.6047   0.2087
  2.3571   3.8417   0.2388   0.2250
  1.5443   0.3223   1.8325   0.2685
  3.5228   3.5264   0.9397   0.2455
  1.5753   0.1722   0.5886   0.1020
  0.9150   0.9365   0.2560   0.1265
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2021-1-3 18:25:41 | 显示全部楼层
程序说明
--------------------------------------------------------------
1.程序功能
在长方体(d1Xd2Xd3)内均匀随机投放多级配球形骨料,达到一定体积比例。
i,某种级配的球体骨料的投放体积比例范围自设。(不超过45%,填充比例高,耗时多。)
ii,所有级配的球体骨料都不得相交(重叠)及包含,不得超出投放区域。
--------------------------------------------------------------
2.程序组成
主程序:SpherePacking.m
子程序:
在长方体内随机生成球体:CreatSphereInCube.m
判断球是否相交:dsphere.m
画球体:PlotSphere.m

点评

实践是检验理论的唯一方法——没错,那你用脚去实践检验能否走到北京吧,千万别坐交通工具。  发表于 2021-1-8 12:24
我都做出很多模型了,实践是检验理论的唯一方法。  发表于 2021-1-6 16:35
实际场景往往不一定都有使用服务器的条件,所以你的解决方案在1楼我早否定了,请先看清问题再回复。  发表于 2021-1-5 13:34
这个对服务器计算不成问题  发表于 2021-1-3 23:01
你这就是我在1楼提出的方法呢,这个方法当n比较大时候,效率太低了。  发表于 2021-1-3 20:52
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2021-2-27 15:17 , Processed in 0.059902 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表