mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
relaxed mesh quality constraints
This commit is contained in:
@ -2474,8 +2474,8 @@ void Foam::autoLayerDriver::mergePatchFacesUndo
|
|||||||
<< " (cos:" << minCos << ')' << nl
|
<< " (cos:" << minCos << ')' << nl
|
||||||
<< " - as long as the resulting face doesn't become concave"
|
<< " - as long as the resulting face doesn't become concave"
|
||||||
<< " by more than "
|
<< " by more than "
|
||||||
<< layerParams.concaveAngle()
|
<< layerParams.concaveAngle() << " degrees" << nl
|
||||||
<< " degrees (0=straight, 180=fully concave)" << nl
|
<< " (0=straight, 180=fully concave)" << nl
|
||||||
<< endl;
|
<< endl;
|
||||||
|
|
||||||
label nChanged = mergePatchFacesUndo(minCos, concaveCos, motionDict);
|
label nChanged = mergePatchFacesUndo(minCos, concaveCos, motionDict);
|
||||||
@ -2709,8 +2709,12 @@ void Foam::autoLayerDriver::addLayers
|
|||||||
boolList flaggedCells;
|
boolList flaggedCells;
|
||||||
boolList flaggedFaces;
|
boolList flaggedFaces;
|
||||||
|
|
||||||
for (label iter = 0; iter < layerParams.nLayerIter(); iter++)
|
for (label iteration = 0; iteration < layerParams.nLayerIter(); iteration++)
|
||||||
{
|
{
|
||||||
|
Info<< nl
|
||||||
|
<< "Layer addition iteration " << iteration << nl
|
||||||
|
<< "--------------------------" << endl;
|
||||||
|
|
||||||
// Make sure displacement is equal on both sides of coupled patches.
|
// Make sure displacement is equal on both sides of coupled patches.
|
||||||
syncPatchDisplacement
|
syncPatchDisplacement
|
||||||
(
|
(
|
||||||
@ -2953,11 +2957,17 @@ void Foam::autoLayerDriver::addLayers
|
|||||||
// Unset the extrusion at the pp.
|
// Unset the extrusion at the pp.
|
||||||
const dictionary& meshQualityDict =
|
const dictionary& meshQualityDict =
|
||||||
(
|
(
|
||||||
iter < layerParams.nRelaxedIter()
|
iteration < layerParams.nRelaxedIter()
|
||||||
? motionDict
|
? motionDict
|
||||||
: motionDict.subDict("relaxed")
|
: motionDict.subDict("relaxed")
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (iteration >= layerParams.nRelaxedIter())
|
||||||
|
{
|
||||||
|
Info<< "Switched to relaxed meshQuality constraints." << endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
label nTotChanged = checkAndUnmark
|
label nTotChanged = checkAndUnmark
|
||||||
(
|
(
|
||||||
addLayer,
|
addLayer,
|
||||||
@ -2983,6 +2993,8 @@ void Foam::autoLayerDriver::addLayers
|
|||||||
// Reset mesh points and start again
|
// Reset mesh points and start again
|
||||||
meshMover.movePoints(oldPoints);
|
meshMover.movePoints(oldPoints);
|
||||||
meshMover.correct();
|
meshMover.correct();
|
||||||
|
|
||||||
|
Info<< endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -160,7 +160,7 @@ snapControls
|
|||||||
//- Relative distance for points to be attracted by surface feature point
|
//- Relative distance for points to be attracted by surface feature point
|
||||||
// or edge. True distance is this factor times local
|
// or edge. True distance is this factor times local
|
||||||
// maximum edge length.
|
// maximum edge length.
|
||||||
tolerance 4;
|
tolerance 4.0;
|
||||||
|
|
||||||
//- Number of mesh displacement relaxation iterations.
|
//- Number of mesh displacement relaxation iterations.
|
||||||
nSolveIter 30;
|
nSolveIter 30;
|
||||||
@ -182,344 +182,14 @@ addLayersControls
|
|||||||
nSurfaceLayers 1;
|
nSurfaceLayers 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
motorBike_frt-fairing:001%1
|
"motorBike_.*"
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_windshield:002%2
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-rim:005%5
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-rim:010%10
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-rim:011%11
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-brake-disk:012%12
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frame:016-shadow%13
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-susp:014%14
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-susp:014-shadow%15
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frame:016%16
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-rim:005-shadow%17
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-chain-hub:022%22
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rearseat%24
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frt-fairing%25
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_windshield%26
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_headlights%27
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_driversseat%28
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-body%29
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fuel-tank%30
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_exhaust%31
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-rim%32
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-mud-guard%33
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-rim%34
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-brake-disk%35
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-brake-caliper%36
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-tyre%37
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_hbars%38
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-forks%39
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_chain%40
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-tyre%41
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_square-dial%42
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_round-dial%43
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_dial-holder%44
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-susp%45
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-brake-lights%46
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-light-bracket%47
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frame%48
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-mud-guard%49
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-susp-spring-damp%50
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fairing-inner-plate%51
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_clutch-housing%52
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_radiator%53
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_water-pipe%54
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_water-pump%55
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_engine%56
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-shock-link%57
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-brake-fluid-pot-bracket%58
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-brake-fluid-pot%59
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_footpeg%60
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-chain-hub%61
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-brake-caliper%62
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rider-helmet%65
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rider-visor%66
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rider-boots%67
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rider-gloves%68
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rider-body%69
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frame:0%70
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_frt-fairing:001-shadow%74
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_windshield-shadow%75
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-mud-guard-shadow%81
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_fr-wh-brake-disk-shadow%83
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-mud-guard-shadow%84
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-susp-spring-damp-shadow%85
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_radiator-shadow%86
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-shock-link-shadow%87
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rear-brake-fluid-pot-bracket-shadow%88
|
|
||||||
{
|
|
||||||
nSurfaceLayers 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
motorBike_rr-wh-chain-hub-shadow%89
|
|
||||||
{
|
{
|
||||||
nSurfaceLayers 1;
|
nSurfaceLayers 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expansion factor for layer mesh
|
// Expansion factor for layer mesh
|
||||||
expansionRatio 1;
|
expansionRatio 1.0;
|
||||||
|
|
||||||
//- Wanted thickness of final added cell layer. If multiple layers
|
//- Wanted thickness of final added cell layer. If multiple layers
|
||||||
// is the
|
// is the
|
||||||
@ -569,6 +239,10 @@ addLayersControls
|
|||||||
|
|
||||||
// Create buffer region for new layer terminations
|
// Create buffer region for new layer terminations
|
||||||
nBufferCellsNoExtrude 0;
|
nBufferCellsNoExtrude 0;
|
||||||
|
|
||||||
|
|
||||||
|
// Overall max number of layer addition iterations
|
||||||
|
nLayerIter 50;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user