diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.C b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.C index 543e5550a2..e57db9f9b3 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.C +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.H b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.H index 1cb691f38c..9fdca3a0f4 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.H +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/createShellMesh.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C index 87c936fe21..60d276388f 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMesh.C @@ -952,7 +952,7 @@ int main(int argc, char *argv[]) const word shellRegionName(dict.lookup("region")); const wordList zoneNames(dict.lookup("faceZones")); const Switch oneD(dict.lookup("oneD")); - + const Switch adaptMesh(dict.lookup("adaptMesh")); Info<< "Extruding zones " << zoneNames << " on mesh " << regionName @@ -1096,6 +1096,9 @@ int main(int argc, char *argv[]) // Add interface patches // ~~~~~~~~~~~~~~~~~~~~~ + // Note that these actually get added to the original mesh + // so the shell mesh creation copies them. They then get removed + // from the original mesh. Info<< "Adding coupling patches:" << nl << nl << "patchID\tpatch\ttype" << nl @@ -1707,6 +1710,8 @@ int main(int argc, char *argv[]) // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ autoPtr addBafflesMap; + + if (adaptMesh) { polyTopoChange meshMod(mesh); @@ -1817,6 +1822,7 @@ int main(int argc, char *argv[]) // Change master and slave boundary conditions on originating mesh // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + if (adaptMesh) { const polyBoundaryMesh& patches = mesh.boundaryMesh(); List newPatches(patches.size()); @@ -1878,22 +1884,27 @@ int main(int argc, char *argv[]) } mesh.removeFvBoundary(); mesh.addFvPatches(newPatches, true); + } + + // Remove any unused patches deleteEmptyPatches(mesh); } - Info<< "Writing mesh " << mesh.name() - << " to " << mesh.facesInstance() << nl - << endl; - - if (!mesh.write()) + if (adaptMesh) { - FatalErrorIn(args.executable()) - << "Failed writing mesh " << mesh.name() - << " at location " << mesh.facesInstance() - << exit(FatalError); - } + Info<< "Writing mesh " << mesh.name() + << " to " << mesh.facesInstance() << nl + << endl; + if (!mesh.write()) + { + FatalErrorIn(args.executable()) + << "Failed writing mesh " << mesh.name() + << " at location " << mesh.facesInstance() + << exit(FatalError); + } + } Info << "End\n" << endl; diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMeshDict b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMeshDict index 6f6fc40f17..983a890755 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMeshDict +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/extrudeToRegionMeshDict @@ -17,9 +17,18 @@ FoamFile // Name of region to create region liquidFilm; -// faceZones to extrude +// FaceZones to extrude faceZones (f0); +// Adapt the original mesh to have directMapped patches at where the +// faceZones are? +// If true: +// - extruding internal faces: become baffles on directMapped patches +// - extruding boundary faces: repatched to be on directMapped patches +// If false: leave original mesh intact. Extruded mesh will still have +// directMapped patch which might need to be adapted. +adaptMesh true; + // Extrude 1D-columns of cells? oneD false; diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.C b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.C index 398ec7f097..6157073a57 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.C +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.H b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.H index dbd21bdc19..46ccb06fbf 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.H +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculator.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculatorI.H b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculatorI.H index 4186e691f6..9c0d3d57d6 100644 --- a/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculatorI.H +++ b/applications/utilities/mesh/generation/extrude/extrudeToRegionMesh/patchPointEdgeCirculatorI.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. + \\ / A nd | Copyright (C) 2010-2010 OpenCFD Ltd. \\/ M anipulation | ------------------------------------------------------------------------------- License diff --git a/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/boundary b/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/boundary deleted file mode 100644 index d8580cbd8f..0000000000 --- a/tutorials/incompressible/simpleFoam/motorBike/constant/polyMesh/boundary +++ /dev/null @@ -1,454 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: dev | -| \\ / A nd | Web: www.OpenFOAM.com | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class polyBoundaryMesh; - location "constant/polyMesh"; - object boundary; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -72 -( - frontAndBack - { - type patch; - nFaces 320; - startFace 955219; - } - inlet - { - type patch; - nFaces 64; - startFace 955539; - } - outlet - { - type patch; - nFaces 64; - startFace 955603; - } - lowerWall - { - type wall; - nFaces 5330; - startFace 955667; - } - upperWall - { - type patch; - nFaces 160; - startFace 960997; - } - motorBike_frt-fairing:001%1 - { - type wall; - nFaces 6595; - startFace 961157; - } - motorBike_windshield:002%2 - { - type wall; - nFaces 50; - startFace 967752; - } - motorBike_rr-wh-rim:005%5 - { - type wall; - nFaces 178; - startFace 967802; - } - motorBike_rr-wh-rim:010%10 - { - type wall; - nFaces 340; - startFace 967980; - } - motorBike_fr-wh-rim:011%11 - { - type wall; - nFaces 474; - startFace 968320; - } - motorBike_fr-wh-brake-disk:012%12 - { - type wall; - nFaces 54; - startFace 968794; - } - motorBike_frame:016-shadow%13 - { - type wall; - nFaces 128; - startFace 968848; - } - motorBike_rear-susp:014%14 - { - type wall; - nFaces 1080; - startFace 968976; - } - motorBike_rear-susp:014-shadow%15 - { - type wall; - nFaces 149; - startFace 970056; - } - motorBike_frame:016%16 - { - type wall; - nFaces 30; - startFace 970205; - } - motorBike_rr-wh-rim:005-shadow%17 - { - type wall; - nFaces 27; - startFace 970235; - } - motorBike_rr-wh-chain-hub:022%22 - { - type wall; - nFaces 141; - startFace 970262; - } - motorBike_rearseat%24 - { - type wall; - nFaces 432; - startFace 970403; - } - motorBike_frt-fairing%25 - { - type wall; - nFaces 626; - startFace 970835; - } - motorBike_windshield%26 - { - type wall; - nFaces 432; - startFace 971461; - } - motorBike_headlights%27 - { - type wall; - nFaces 161; - startFace 971893; - } - motorBike_driversseat%28 - { - type wall; - nFaces 367; - startFace 972054; - } - motorBike_rear-body%29 - { - type wall; - nFaces 2076; - startFace 972421; - } - motorBike_fuel-tank%30 - { - type wall; - nFaces 912; - startFace 974497; - } - motorBike_exhaust%31 - { - type wall; - nFaces 2390; - startFace 975409; - } - motorBike_rr-wh-rim%32 - { - type wall; - nFaces 1430; - startFace 977799; - } - motorBike_fr-mud-guard%33 - { - type wall; - nFaces 758; - startFace 979229; - } - motorBike_fr-wh-rim%34 - { - type wall; - nFaces 591; - startFace 979987; - } - motorBike_fr-wh-brake-disk%35 - { - type wall; - nFaces 534; - startFace 980578; - } - motorBike_fr-brake-caliper%36 - { - type wall; - nFaces 164; - startFace 981112; - } - motorBike_fr-wh-tyre%37 - { - type wall; - nFaces 1116; - startFace 981276; - } - motorBike_hbars%38 - { - type wall; - nFaces 535; - startFace 982392; - } - motorBike_fr-forks%39 - { - type wall; - nFaces 1143; - startFace 982927; - } - motorBike_chain%40 - { - type wall; - nFaces 474; - startFace 984070; - } - motorBike_rr-wh-tyre%41 - { - type wall; - nFaces 1786; - startFace 984544; - } - motorBike_square-dial%42 - { - type wall; - nFaces 6; - startFace 986330; - } - motorBike_round-dial%43 - { - type wall; - nFaces 17; - startFace 986336; - } - motorBike_dial-holder%44 - { - type wall; - nFaces 87; - startFace 986353; - } - motorBike_rear-susp%45 - { - type wall; - nFaces 1786; - startFace 986440; - } - motorBike_rear-brake-lights%46 - { - type wall; - nFaces 54; - startFace 988226; - } - motorBike_rear-light-bracket%47 - { - type wall; - nFaces 163; - startFace 988280; - } - motorBike_frame%48 - { - type wall; - nFaces 2040; - startFace 988443; - } - motorBike_rear-mud-guard%49 - { - type wall; - nFaces 798; - startFace 990483; - } - motorBike_rear-susp-spring-damp%50 - { - type wall; - nFaces 124; - startFace 991281; - } - motorBike_fairing-inner-plate%51 - { - type wall; - nFaces 446; - startFace 991405; - } - motorBike_clutch-housing%52 - { - type wall; - nFaces 964; - startFace 991851; - } - motorBike_radiator%53 - { - type wall; - nFaces 58; - startFace 992815; - } - motorBike_water-pipe%54 - { - type wall; - nFaces 103; - startFace 992873; - } - motorBike_water-pump%55 - { - type wall; - nFaces 74; - startFace 992976; - } - motorBike_engine%56 - { - type wall; - nFaces 2389; - startFace 993050; - } - motorBike_rear-shock-link%57 - { - type wall; - nFaces 28; - startFace 995439; - } - motorBike_rear-brake-fluid-pot-bracket%58 - { - type wall; - nFaces 59; - startFace 995467; - } - motorBike_rear-brake-fluid-pot%59 - { - type wall; - nFaces 53; - startFace 995526; - } - motorBike_footpeg%60 - { - type wall; - nFaces 87; - startFace 995579; - } - motorBike_rr-wh-chain-hub%61 - { - type wall; - nFaces 143; - startFace 995666; - } - motorBike_rear-brake-caliper%62 - { - type wall; - nFaces 142; - startFace 995809; - } - motorBike_rider-helmet%65 - { - type wall; - nFaces 583; - startFace 995951; - } - motorBike_rider-visor%66 - { - type wall; - nFaces 95; - startFace 996534; - } - motorBike_rider-boots%67 - { - type wall; - nFaces 1025; - startFace 996629; - } - motorBike_rider-gloves%68 - { - type wall; - nFaces 320; - startFace 997654; - } - motorBike_rider-body%69 - { - type wall; - nFaces 4555; - startFace 997974; - } - motorBike_frame:0%70 - { - type wall; - nFaces 37; - startFace 1002529; - } - motorBike_frt-fairing:001-shadow%74 - { - type wall; - nFaces 1301; - startFace 1002566; - } - motorBike_windshield-shadow%75 - { - type wall; - nFaces 97; - startFace 1003867; - } - motorBike_fr-mud-guard-shadow%81 - { - type wall; - nFaces 140; - startFace 1003964; - } - motorBike_fr-wh-brake-disk-shadow%83 - { - type wall; - nFaces 76; - startFace 1004104; - } - motorBike_rear-mud-guard-shadow%84 - { - type wall; - nFaces 137; - startFace 1004180; - } - motorBike_rear-susp-spring-damp-shadow%85 - { - type wall; - nFaces 15; - startFace 1004317; - } - motorBike_radiator-shadow%86 - { - type wall; - nFaces 4; - startFace 1004332; - } - motorBike_rear-shock-link-shadow%87 - { - type wall; - nFaces 8; - startFace 1004336; - } - motorBike_rear-brake-fluid-pot-bracket-shadow%88 - { - type wall; - nFaces 5; - startFace 1004344; - } - motorBike_rr-wh-chain-hub-shadow%89 - { - type wall; - nFaces 27; - startFace 1004349; - } -) - -// ************************************************************************* //