セルcellやパッチpatchを構成する面faceそれぞれの構成点pointを取得する方法



セルcellを構成する面faceそれぞれの構成点pointを取得する方法


forAll(U, celli)
{
	labelList	poLabel	= mesh.cellPoints(celli);
	forAll(poLabel, ind) {
		point	pos = thePoints[poLabel[ind]];
		Info << "cell[" << celli << "]=(" << pos.x() << "," << pos.y() << "," << pos.z() << ")" << endl;
	}//forAll
}//forAll



パッチpatchを構成する面faceそれぞれの構成点pointを取得する方法


const faceList&		theFaces	= mesh.faces();
const pointField&	thePoints	= mesh.points();

forAll(U.boundaryField(), patchi)
{
	fvPatchVectorField&	pU	= U.boundaryField()[patchi];
	const fvPatch&		bm 	= mesh.boundary()[patchi];
	label			indexS	= bm.patch().start();
	forAll(pU, facei)
	{
		const pointField	facepo = (theFaces[facei+indexS]).points(thePoints);
		forAll(facepo, fapindex) {
			point	pos = facepo[fapindex];
			Info << "patch[" << patchi << "]-"face[" << facei << "]=(" << pos.x() << "," << pos.y() << "," << pos.z() << ")" << endl;
		}//forAll
	}//forAll
}//forAll




<2014/09/20sat>
[EOF] -
最終更新:2014年09月20日 13:26