|
[Sponsors] |
implementation of mapFields into parallel transient case |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
May 30, 2012, 09:16 |
implementation of mapFields into parallel transient case
|
#1 |
Member
Simon Arne
Join Date: May 2012
Posts: 42
Rep Power: 14 |
Hey,
I calculate a flow around an object, based on the motorBike tutorial. A steady-state case is set up, that creates a directory at timestep 50 that i want to implement into my transient case. The snappyHexMesh options are the same for both. Unluckily i am not sure how i can implement the mapFields function into my transient-Allrun. My steady-state Allrun (solver is SIMPLE, results look allright) Code:
#!/bin/sh # Source tutorial run functions . $WM_PROJECT_DIR/bin/tools/RunFunctions cp system/fvSolution.OF2.1.0 system/fvSolution cp system/fvSchemes.OF2.1.0 system/fvSchemes cp 0.org/nut.OF2.1.0 0.org/nut cp constant/polyMesh/blockMeshDict.OF2.1.0 constant/polyMesh/blockMeshDict cp -r 0.org 0 > /dev/null 2>&1 runApplication blockMesh runApplication snappyHexMesh -overwrite runApplication decomposePar runParallel renumberMesh 6 -overwrite runParallel potentialFoam 6 -initialiseUBCs -noFunctionObjects runParallel `getApplication` 6 runApplication reconstructPar -time 50 Code:
#!/bin/sh # Source tutorial run functions . $WM_PROJECT_DIR/bin/tools/RunFunctions cp system/fvSolution.OF2.1.0 system/fvSolution cp system/fvSchemes.OF2.1.0 system/fvSchemes cp 0.org/nut.OF2.1.0 0.org/nut cp constant/polyMesh/blockMeshDict.OF2.1.0 constant/polyMesh/blockMeshDict cp -r 0.org 0 > /dev/null 2>&1 runApplication blockMesh runApplication snappyHexMesh -overwrite mapFields /home/simon/openFoam/nachstellen/startwerte/ -sourceTime 50 -consistent runApplication decomposePar runParallel renumberMesh 6 -overwrite runParallel `getApplication` 6 runApplication reconstructParMesh -constant -mergeTol 1e-6 runApplication reconstructPar And this is my PIMPLE log: Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.1.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 2.1.0-0bc225064152 Exec : pimpleFoam -parallel Date : May 30 2012 Time : 13:57:50 Host : "simon-desktop" PID : 5693 Case : /home/simon/openFoam/nachstellen/parallel nProcs : 6 Slaves : 5 ( "simon-desktop.5694" "simon-desktop.5695" "simon-desktop.5696" "simon-desktop.5697" "simon-desktop.5698" ) Pstream initialized with: floatTransfer : 0 nProcsSimpleSum : 0 commsType : nonBlocking sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Disallowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 Reading field p Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type LESModel Selecting LES turbulence model SpalartAllmarasDDES No field sources present PIMPLE: Operating solver in PISO mode Starting time loop Courant Number mean: 0.135977 max: 5.28681 Time = 0.001 DILUPBiCG: Solving for Ux, Initial residual = 0.00271502, Final residual = 2.0949e-06, No Iterations 5 DILUPBiCG: Solving for Uy, Initial residual = 0.00274523, Final residual = 4.48912e-06, No Iterations 4 DILUPBiCG: Solving for Uz, Initial residual = 0.00143448, Final residual = 5.34199e-06, No Iterations 4 GAMG: Solving for p, Initial residual = 0.294934, Final residual = 0.00136378, No Iterations 4 time step continuity errors : sum local = 6.86498e-08, global = -3.4579e-09, cumulative = -3.4579e-09 GAMG: Solving for p, Initial residual = 0.0391325, Final residual = 8.14741e-07, No Iterations 16 time step continuity errors : sum local = 4.55977e-11, global = -2.81814e-12, cumulative = -3.46072e-09 [1] [5] #0 Foam::error::printStack(Foam::Ostream&)[3] [4] #0[0] Foam::error::printStack(Foam::Ostream&)[2] #0 Foam::error::printStack(Foam::Ostream&)#0 Foam::error::printStack(Foam::Ostream&)##0 Foam::error::printStack(Foam::Ostream&)0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [5] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [4] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [1] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [3] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [2] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [0] #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [1] #2 Uninterpreted: [1] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [4] #2 Uninterpreted: [4] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [2] #2 Uninterpreted: [2] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [5] #2 Uninterpreted: [5] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [1] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [3] #2 Uninterpreted: [3] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [4] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [2] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [0] #2 Uninterpreted: [0] #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [3] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [0] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [1] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [4] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [2] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" [5] #4 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [4] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [3] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [2] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [0] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so" [5] #5 Foam::fvMatrix<double>::solve() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [3] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [4] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [5] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [1] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so" [0] #6 Foam::incompressible::LESModels::SpalartAllmaras::correct(Foam::tmp<Foam::GeometricField<Foam::Tensor<double>, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [3] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [2] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [1] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [5] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [0] #7 Foam::incompressible::LESModel::correct() in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [2] #8 in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [4] #8 in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [1] #8 in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [0] #8 in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [3] #8 in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so" [5] #8 [4] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [4] #9 __libc_start_main [2] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [2] #9 __libc_start_main[0] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [0] #9 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6" [4] #10 [1] in [3] in "/opt/openf"/opt/openfoam210/platfooam210/platforms/linuxGccDPOpt/bin/pimpleFoam" rms/linuxGccDPOpt/bin/pimpleFoam" [1] #9 [3] #9 __libc_start_main__libc_start_main in "/lib/tls/i686/cmov/libc.so.6" [0] #10 [5] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [5] #9 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6" [2] #10 in "/lib/tls/i686/cmov/libc.so.6" [1] #10 in "/lib/tls/i686/cmov/libc.so.6" [5] #10 [4] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [simon-desktop:05697] *** Process received signal *** [simon-desktop:05697] Signal: Floating point exception (8) [simon-desktop:05697] Signal code: (-6) [simon-desktop:05697] Failing at address: 0x1641 [simon-desktop:05697] [ 0] [0xb777e410] [simon-desktop:05697] [ 1] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZN4Foam6sigFpe10sigHandlerEi+0x61) [0xb6055ea1] [simon-desktop:05697] [ 2] [0xb777e400] [simon-desktop:05697] [ 3] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so(_ZN4Foam8fvMatrixIdE5solveERKNS_10dictionaryE+0x165) [0xb69c3f45] [simon-desktop:05697] [ 4] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so(_ZN4Foam8fvMatrixIdE5solveEv+0xe5) [0xb74a5e45] [simon-desktop:05697] [ 5] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so(_ZN4Foam14incompressible9LESModels15SpalartAllmaras7correctERKNS_3tmpINS_14GeometricFieldINS_6TensorIdEENS_12fvPatchFieldENS_7volMeshEEEEE+0xa6b) [0xb73003eb] [simon-desktop:05697] [ 6] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so(_ZN4Foam14incompressible8LESModel7correctEv+0x44) [0xb72ae724] [simon-desktop:05697] [ 7] pimpleFoam() [0x805f34e] [simon-desktop:05697] [ 8] /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0xb59a9bd6] [simon-desktop:05697] [ 9] pimpleFoam() [0x805bee1] [simon-desktop:05697] *** End of error message *** in "/lib/tls/i686/cmov/libc.so.6" [3] #10 [0] in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/pimpleFoam" [simon-desktop:05693] *** Process received signal *** [simon-desktop:05693] Signal: Floating point exception (8) [simon-desktop:05693] Signal code: (-6) [simon-desktop:05693] Failing at address: 0x163d [simon-desktop:05693] [ 0] [0xb7737410] [simon-desktop:05693] [ 1] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so(_ZN4Foam6sigFpe10sigHandlerEi+0x61) [0xb600eea1] [simon-desktop:05693] [ 2] [0xb7737400] [simon-desktop:05693] [ 3] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libfiniteVolume.so(_ZN4Foam8fvMatrixIdE5solveERKNS_10dictionaryE+0x165) [0xb697cf45] [simon-desktop:05693] [ 4] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleRASModels.so(_ZN4Foam8fvMatrixIdE5solveEv+0xe5) [0xb745ee45] [simon-desktop:05693] [ 5] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so(_ZN4Foam14incompressible9LESModels15SpalartAllmaras7correctERKNS_3tmpINS_14GeometricFieldINS_6TensorIdEENS_12fvPatchFieldENS_7volMeshEEEEE+0xa6b) [0xb72b93eb] [simon-desktop:05693] [ 6] /opt/openfoam210/platforms/linuxGccDPOpt/lib/libincompressibleLESModels.so(_ZN4Foam14incompressible8LESModel7correctEv+0x44) [0xb7267724] [simon-desktop:05693] [ 7] pimpleFoam() [0x805f34e] [simon-desktop:05693] [ 8] /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0xb5962bd6] [simon-desktop:05693] [ 9] pimpleFoam() [0x805bee1] [simon-desktop:05693] *** End of error message *** -------------------------------------------------------------------------- mpirun noticed that process rank 4 with PID 5697 on node simon-desktop exited on signal 8 (Floating point exception). -------------------------------------------------------------------------- Big thanks in advance, i am new to this programme (got started 1 month ago) and completely lost. I will give all necessary information, please help me! I am completely unsure about how to implement parallelization and mapping correctly. I reconstruct time 50 in my steady-state case because mapFields with -sourceParallel doesn't work at all. I want the transient-case to take the fields from my steady-state case as initial conditions. Am I on the right track? Best regards, Simon |
|
June 1, 2012, 03:47 |
|
#2 |
Member
|
Hi Simon,
there's this: "Courant Number mean: 0.135977 max: 5.28681" It seems a little high. Try to start with a smaller initial timestep. I guess you started with DeltaT = 0.001 ... so try 0.0001 or even lower. What about MeshQuality, have you checked? Greets Jan
__________________
~~~_/)~~~ |
|
June 1, 2012, 14:13 |
|
#3 |
Member
Simon Arne
Join Date: May 2012
Posts: 42
Rep Power: 14 |
Hey,
Thanks for your advice! I added "adjustTimeStep yes; maxCo 1.0; to my transient case Allrun and now the solver is working. Good success. Unluckily the mapping still doesn't work. The message appearing within the terminal window: Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.1.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 2.1.0-0bc225064152 Exec : mapFields /home/simon/openFoam/longterm/startwerte -consistent -parallelSource Date : Jun 01 2012 Time : 19:04:02 Host : "simon-desktop" PID : 2038 Case : /home/simon/openFoam/longterm/parallel nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Disallowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Source: "/home/simon/openFoam/longterm" "startwerte" Target: "/home/simon/openFoam/longterm" "parallel" Create databases as time Create target mesh Target mesh size: 1253378 Source processor 0 Source time: 0 Target time: 0 mesh size: 417792 --> FOAM Warning : From function meshToMesh::calcAddressing() in file meshToMeshInterpolation/meshToMesh/calculateMeshToMeshAddressing.C at line 156 Source patch inlet has no faces. Not performing mapping for it. Mapping fields for time 0 interpolating ccz #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigSegv::sigHandler(int) in "/opt/openfoam210/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #2 Uninterpreted: #3 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" #4 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" #5 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" #6 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" #7 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" #8 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6" #9 in "/opt/openfoam210/platforms/linuxGccDPOpt/bin/mapFields" Segmentation fault |
|
September 3, 2012, 12:33 |
|
#4 |
New Member
Sebastian Bomberg
Join Date: Aug 2012
Location: Munich, Germany
Posts: 12
Rep Power: 14 |
Hey simon!
sorry for the lag but I'm quite new to the forum. It looks like mapFields wants to map the stuff in the "0" time folder (which is not reconstructed). That's why it complains about the empty patch. You should change your startTime in your target controlDict to 50 and/or maybe create a folder for time "50" as well. Hope that helps. B.T.W. it should work without reconstructing to if you give it the options -parallelSource (and -parallelTarget) |
|
August 2, 2016, 05:41 |
|
#5 |
New Member
Join Date: Jul 2016
Posts: 4
Rep Power: 10 |
Hi sebas!
I got the same problem as described in the post, and I tried your method which is to reconstruct the source case. Then the warnings did disappeared, however, nothing was written into processor folders. The command I used is mapFields ../test_parallel -parallelTarget -consistent the output in the terminal looked like: Create databases as time Create source mesh Source time: 2.5 Target time: 2.5 Source mesh size: 1600 Target processor 0 mesh size: 1016 Mapping fields for time 2.5 Target processor 1 mesh size: 584 Mapping fields for time 2.5 Do you have any idea why this happens? Thanks in advance! Last edited by yb8119; August 2, 2016 at 05:44. Reason: Wrong post |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Parallel Moving Mesh Bug for Multi-patch Case | albcem | OpenFOAM Bugs | 17 | April 29, 2013 00:44 |
Global residuals in transient case | mx | Main CFD Forum | 0 | August 6, 2007 08:12 |
Free surface boudary conditions with SOLA-VOF | Fan | Main CFD Forum | 10 | September 9, 2006 13:24 |
Fluidisation transient case | Vikas Kumar | Main CFD Forum | 0 | April 24, 2003 04:29 |
UDFs Parallel Implementation Rules | Greg Perkins | FLUENT | 0 | February 4, 2001 06:59 |