コード例 #1
0
	def __init__(self,options,n_material,p_material):
		global mesh #very bad, but innertriangle needs it.
		thetriangle = np.array([[0.,0.],[1.,0.],[.5,.8660254]])

		mesh = meshtest.TestMesh()
		for x in range(options.size):
			if dolfin.__version__=='0.9.7':
				mesh.refine()
			else:
				dolfin.mesh.refine(mesh)
		mc.ParticleMesh.__init__(self,mesh,
			options.scale,options.length,options.dt,options.gen_num)

		inner = triangle_util.scale_triangle(thetriangle,.52)
		self.populate_regions(lambda x: 
			triangle_util.point_in_triangle(x,inner),0,0,
			n_material,
			p_material) 
		self.boundarymesh = BoundaryMesh(mesh)
		self.OuterBoundary = OuterTriangle()
		self.InnerBoundary = InnerTriangle()
		mesh = self
コード例 #2
0
 def check(p):
     return triangle_util.point_in_triangle(p, tri)