多维数据集模型中随机球的Matlab周期边界条件

时间:2014-09-03 14:38:14

标签: matlab geometry

我在立方体中有随机的非重叠球体(静止)。我试图在墙壁上实现周期性边界条件,因此如果边缘上有任何半球,则它出现在另一侧。这似乎是一个研究得很好的问题,但我不确定如何在球体上实现它。 在代码的开头,我会有随机球体位置(c,r),其中c = [x y z]在维度(dims)的立方体内部或边缘上,其中dims = [l b h]。

在多维数据集中选择随机球体的代码:

   function [ c, r ] = randomSphere_1( dims )
   % creating one sphere at random inside [0..dims(1)]x[0..dims(2)]x...
   % radius and center coordinates are sampled from a uniform distribution 
   % over the relevant domain.
   %
   % output: c - center of sphere (vector cx, cy,... )
   %         r - radius of sphere (scalar)
   r = 0.15 + ( 0.55 - 0.15) .* rand(1);% radius varies between 0.15mm - 0.55mm
   c = bsxfun (@times,(dims) , rand(1,3)) + r; % to make sure sphere is placed inside or on the edge of the cube
   % periodic condition
   *if* 

我正在尝试构建一个代码,如果中心坐标落在边缘或它们之上,那么在球体中应该存在周期性,而另一半应该在另一边。我添加了一个图像,只是为了通过周期性边界条件来了解我的意思。所以边缘上的球体正是我想要的。我该如何处理这个问题?

enter image description here

0 个答案:

没有答案