一种纤维在三维长方体基体内随机生成的方法与流程

文档序号:17952563发布日期:2019-06-19 00:09阅读:1147来源:国知局
一种纤维在三维长方体基体内随机生成的方法与流程

本发明涉及数值分析技术领域,具体地,涉及一种纤维在三维长方体基体内随机生成的方法。



背景技术:

目前,材料结构的设计计算分析主要集中在对材料宏观分析的基础之上,材料结构的细观设计计算分析,由于缺乏合适的纤维在三维长方体基体内随机生成的方法,在基体中掺入纤维方面的细观设计计算分析,却一直止步不前。



技术实现要素:

本发明的目的是提供一种纤维在三维长方体基体内随机生成的方法,为基体中掺入纤维方面的细观设计计算分析提供建模基础。

为了实现上述目的,本发明采用如下技术方案:

本发明一种纤维在三维长方体基体内随机生成的方法,包括如下步骤:

步骤s1,在全局坐标系0xyz下,在三维长方体基体{0,x0;0,y0;0,z0}形成的立体空间内随机生成纤维起点ki,所述纤维起点ki的x轴坐标xi、y轴坐标yi,z轴坐标zi,采用随机函数生成,并满足0≤xi≤x0,0≤yi≤y0,0≤zi≤z0;

步骤s2,以纤维起点ki(xi、yi、zi)为坐标原点建立局部坐标系kix'y'z';

步骤s3,切换坐标系为局部坐标系kix'y'z',保持纤维起点ki不动,依次对局部坐标系kix'y'z'的x'轴、y'轴、z'轴按随机角度进行坐标轴旋转;

步骤s4,在完成坐标轴旋转的局部坐标系kix'y'z'的点(lf,0,0)处生成纤维终点kj,其中lf为纤维的长度;

步骤s5,切换局部坐标系kix'y'z'为全局坐标系0xyz,并提取纤维终点kj在全局坐标系下的坐标(xj,yj,zj);

当满足:0≤xj≤x0,0≤yj≤y0,0≤zj≤z0,则连接ki及kj,生成一条随机分布纤维;

当xj>x0或xj<0或yj>y0或yj<0或zj>z0或zj<0时,则删除点kj,返回步骤s3;然后切换至全局坐标系;

步骤s6,把步骤s1-s5作为子程序或宏文件,采用调用子程序或宏文件的方式,重复执行,生成n条纤维。

通过上述技术方案,在全局坐标0xyz下,在三维长方体的空间{0,x0;0,y0;0,z0}内采用随机函数生成纤维起点ki,有效保证了纤维起点ki生成的三维空间特性和随机性;在纤维起点ki建立局部坐标系并旋转,有效保证了纤维方向;当xj>x0或xj<0或yj>y0或yj<0或zj>z0或zj<0,则该点超出基体范围,删除该点,返回步骤s3,直至纤维终点kj的坐标满足0≤xj≤x0,0≤yj≤y0,0≤zj≤z0为止,能有效保证在三维长方体基体边缘纤维的有效分布;而最后采用调用子程序或宏文件的方式,可高效、快速生成多条纤维。

本发明的有益效果是:

1.采用本发明的方法,可有效反映纤维在三维空间上随机分布的特性,本方法思路清晰,操作性强、生成的效率高。

2.本发明在全局坐标系0xyz下,在指定矩形空间{0,x0;0,y0;0,z0}内采用随机函数生成纤维起点ki,有效保证了纤维起点ki生成的三维空间特性和随机性。

在s3步骤中,在纤维起点ki建立局部坐标系并按随机角度旋转,有效保证了纤维方向的随机性。

本发明中s5步骤中,xj>x0或xj<0或yj>y0或yj<0或zj>z0或zj<0,则该点超出基体范围,删除该点,返回步骤s3,再次旋转局部坐标系、生成纤维终点kj,切换坐标系为全局坐标,直至纤维终点kj的坐标满足0≤xj≤x0,0≤yj≤y0,0≤zj≤z0为止;采用该法,能有效保证在三维长方体基体边缘纤维的有效分布。

实验证明,采用如下算法:xj>x0或xj<0或yj>y0或yj<0或zj>z0或zj<0,则该点超出基体范围,删除该点和纤维起点ki,返回步骤s1,生成纤维起点ki,再次旋转局部坐标系,生成纤维终点kj,切换坐标系为全局坐标系,如此反复,直至纤维终点kj的坐标满足0≤xj≤x0,0≤yj≤y0,0≤zj≤z0为止;则不能有效保证在三维长方体基体边缘纤维的有效分布,更多的是生成三维长方体基体内部的纤维。

3.本发明采用调用子程序或宏文件的方式,可高效、快速生成多条纤维。

附图说明

附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:

图1是根据一示例性实施例示出的一种纤维在三维长方体基体内随机生成方法的流程图;

图2是图1示出的随机生成纤维起点ki的示意图;

图3是图1示出的纤维起点ki建立局部坐标系并旋转示意图;

图4是图1示出的以kj为纤维终点的纤维生成示意图;

图5是根据一示例性实施例示出的在三维长方体基体内随机生成纤维的断面图;

图6是根据一示例性实施例示出的实施例在三维长方体基体内随机生成纤维的立体图。

图中:1–基体,2–纤维。

具体实施方式

下面详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的方法的例子。

图1是根据一示例性实施例示出的一种纤维在三维长方体基体内随机生成方法的流程图,如图1所示,该方法包括:

步骤s1,在全局坐标系0xyz下,在三维长方体基体{0,x0;0,y0;0,z0}形成的立体空间内随机生成纤维起点ki,所述纤维起点ki的x轴坐标xi、y轴坐标yi,z轴坐标zi,采用随机函数生成,并满足0≤xi≤x0,0≤yi≤y0,0≤zi≤z0;

如图2所示,为一长方体基体,该基体的一顶点置于全局坐标系的原点o,与所述原点o连接的基体的三条边ox0、oy0、oz0分别置于三个坐标轴上,并在基体形成的立体空间{0,x0;0,y0;0,z0}内生成纤维起点ki;纤维起点ki的x轴坐标xi、y轴坐标yi、z轴坐标zi,该纤维起点ki采用随机函数生成,并满足0≤xi≤x0,0≤yi≤y0,0≤zi≤z0,这样便有效保证了纤维起点ki生成的三维空间特性和随机性。

步骤s2,如图3所示,以纤维起点ki(xi、yi、zi)为坐标原点建立局部坐标系kix'y'z'。

步骤s3,如图3所示,切换坐标系为局部坐标系kix'y'z',保持纤维起点ki不动,依次对局部坐标系kix'y'z'的x'轴、y'轴、z'轴按随机角度进行坐标轴旋转。

其中,随机角度的生成可以采用随机函数rand,使角度在0~360度之间随机生成,从而有效地保证了纤维方向的随机性。

步骤s4,如图4所示,在完成坐标轴旋转的局部坐标系kix'y'z'的点(lf,0,0)处生成纤维终点kj,其中lf为纤维的长度,即为ki到kj的距离。

步骤s5,切换局部坐标系kix'y'z'为全局坐标系0xyz,并提取纤维终点kj在全局坐标系下的坐标(xj,yj,zj);

并判断坐标(xj,yj,zj)是否满足0≤xj≤x0且0≤yj≤y0且0≤zj≤z0,当满足时,则连接ki及kj,生成一条随机分布纤维;

当xj>x0或xj<0,和/或yj>y0或yj<0,和/或zj>z0或zj<0时,则删除该点,返回步骤s3:再次旋转局部坐标系kix'y'z',生成纤维终点kj,切换坐标系为全局坐标,提取纤维终点kj的坐标(xj,yj,zj),直至纤维终点kj的坐标满足0≤xj≤x0,0≤yj≤y0,0≤zj≤z0为止,连接ki及kj,生成一条随机分布纤维;然后切换至全局坐标系。

步骤s6,把步骤s1-s5作为子程序或宏文件,采用调用子程序或宏文件的方式,重复执行,生成n条纤维,如图5、图6所示。

综上所述,本发明在三维长方体基体内随机生成纤维的方法,有效反映了纤维在三维空间上随机分布的特性,思路清晰,操作性强,纤维生成效率高,为基体中掺入纤维方面的细观设计计算分析提供了建模基础。

下面以一具体实例,详细说明在三维长方体基体内随机生成纤维的方法过程。

一尺寸为500mm×150mm×150mm的基体,x0=500mm、y0=150mm、z0=150mm,纤维长度lf=60mm,需要在基体内随机生成纤维1000根,以ansys软件为分析工具,以mm为单位,在三维长方体基体内随机生成纤维的过程如下:

步骤s1,在全局坐标系0xyz下,在三维长方体基体{0,500;0,150;0,150}形成的立体空间内随机生成纤维起点ki,纤维起点ki的x轴坐标xi、y轴坐标yi,z轴坐标zi,采用随机函数rand生成:x轴坐标xi=rand(0,500),y轴坐标yi=rand(0,150),z轴坐标zi=rand(0,150),使之满足了0≤xi≤500,0≤yi≤150,0≤zi≤150。

步骤s2,,采用local命令,以纤维起点ki(xi、yi、zi)为坐标原点建立局部坐标系kix'y'z';

步骤s3,采用命令csys,切换坐标系为局部坐标系kix'y'z',保持纤维起点ki不动,依次对局部坐标系kix'y'z'的x'轴、y'轴、z'轴按随机角度进行坐标轴旋转;随机角度采用rand(0,360)函数生成,角度在0~360度之间随机生成。

步骤s4,在完成坐标轴旋转的局部坐标系kix'y'z'的点(60,0,0)处生成纤维终点kj,其中60为纤维的长度。

步骤s5,采用命令csys,切换局部坐标系kix'y'z'为全局坐标系0xyz,采用命令kxloc、kyloc、kzloc分别提取纤维终点kj在全局坐标系下的坐标(xj,yj,zj),并判断坐标(xj,yj,zj)是否满足0≤xj≤500且0≤yj≤150且0≤zj≤150,当满足时,则连接ki及kj,生成一条随机分布的纤维;

当不满足时,即:kj(xj,yj,zj)超出基体范围,xj>500或xj<0或yj>150或yj<0或zj>150或zj<0,删除该点,返回步骤s3:再次旋转局部坐标系kix'y'z',生成纤维终点kj,切换坐标系为全局坐标系,提取纤维终点kj的坐标,直至纤维终点kj的坐标满足0≤xj≤500,0≤yj≤150,0≤zj≤150为止,则连接ki及kj,生成一条随机分布的纤维;然后切换至全局坐标系。

步骤s6,把步骤s1-s5作为子程序或宏文件mac,采用调用子程序或宏文件的方式,重复执行(*do)1000次,生成1000条纤维。

以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,本领域技术人员在考虑说明书及实践本发明后,容易想到本发明的其它实施方案,均属于本发明的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。同时本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。本发明并不局限于上面已经描述出的精确结构,本发明的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1