|
[Sponsors] |
![]() |
![]() |
#1 |
New Member
onurlands
Join Date: Feb 2024
Posts: 25
Rep Power: 2 ![]() |
I want to perform an oblique shot of a solid object within the boundary volume, simulate this and at the same time calculate where it will fall.
I will ask you a few questions one by one and I would be very happy if you could answer them. 1- I perform the mesh operation on Salome. Before performing mesh, when creating the boundary volume, do I need to remove the part to be discarded from the boundary volume? 2- Let's assume that this is a very simple example. To solve this problem, would it be enough to define the limit volume and the object to be thrown in the files in folder 0? How should I define these (noslip, fixedvalue etc. I would appreciate it if you could explain these parts) |
|
![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Yann
Join Date: Apr 2012
Location: France
Posts: 1,238
Rep Power: 29 ![]() ![]() |
Hello,
Have you run the case I mentioned on this post: icoUncoupledKinematicParcelFoam ? The whole case is available on github: https://github.com/nicolasbadano/OversetSkipping This is a good start, running it and studying how it is setup should put you in the right direction to set your own case. Cheers, Yann |
|
![]() |
![]() |
![]() |
![]() |
#3 |
New Member
Magnus Jackson
Join Date: Feb 2024
Posts: 1
Rep Power: 0 ![]() |
Hi,
I have been working on setting up a ship simulation case, using overInterDyMFoam, and have been having an issue with the dynamicCode folder and the dynamicMeshDict. The error message I have been receiving is shown below: Code:
Could not load "/home/mjackson/OpenFOAM/mjackson-v2312/run/meshStudy/testCase/background/dynamicCode/platforms/linux64GccDPInt32Opt/lib/libcodeStream_bb399afaaa216c908409d159545e7fafbfa984fb.so" /home/mjackson/OpenFOAM/mjackson-v2312/run/meshStudy/testCase/background/dynamicCode/platforms/linux64GccDPInt32Opt/lib/libcodeStream_bb399afaaa216c908409d159545e7fafbfa984fb.so: cannot open shared object file: No such file or directory ln: ./lnInclude make: /usr/lib/openfoam/openfoam2312/platforms/tools/linux64Gcc/wmkdepend: No such file or directory make: *** No rule to make target 'Make/linux64GccDPInt32Opt/codeStreamTemplate.C.dep', needed by 'Make/linux64GccDPInt32Opt/codeStreamTemplate.o'. Stop. [0] [0] [0] --> FOAM FATAL IO ERROR: (openfoam-2312) [0] Failed wmake "dynamicCode/_bb399afaaa216c908409d159545e7fafbfa984fb/platforms/linux64GccDPInt32Opt/lib/libcodeStream_bb399afaaa216c908409d159545e7fafbfa984fb.so" [0] [0] [0] file: constant/dynamicMeshDict/sixDoFRigidBodyMotionCoeffs at line 26. [0] [0] From static void (* Foam::functionEntries::codeStream::getFunction(const Foam::dictionary&, const Foam::dictionary&))(Foam::Ostream&, const Foam::dictionary&) [0] in file db/dictionary/functionEntries/codeStream/codeStream.C at line 188. [0] FOAM parallel run exiting [0] -------------------------------------------------------------------------- MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD with errorcode 1. NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes. You may or may not see output from other processes, depending on exactly when Open MPI kills them. -------------------------------------------------------------------------- Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: v2312 | | \\ / A nd | Website: www.openfoam.com | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object dynamicMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // motionSolverLibs (sixDoFRigidBodyMotion); dynamicFvMesh dynamicOversetFvMesh; solver sixDoFRigidBodyMotion; sixDoFRigidBodyMotionCoeffs { patches (floatingObject); innerDistance 0.2; outerDistance 1.0; centreOfMass (-1 0 -1); // Cuboid dimensions Lx 18.28; Ly 5.4; Lz 2.0; // Density of the solid rhoSolid 38.5; // Cuboid mass mass #eval{ $rhoSolid*$Lx*$Ly*$Lz }; //mass #calc "$rhoSolid*$Lx*$Ly*$Lz"; // Cuboid moment of inertia about the centre of mass momentOfInertia #codeStream { codeInclude #{ #include "diagTensor.H" #}; code #{ scalar sqrLx = sqr($Lx); scalar sqrLy = sqr($Ly); scalar sqrLz = sqr($Lz); os << $mass *diagTensor(sqrLy + sqrLz, sqrLx + sqrLz, sqrLx + sqrLy)/12.0; #}; }; report on; accelerationRelaxation 0.6; accelerationDamping 0.9; solver { type Newmark; } constraints { /* fixedPoint { sixDoFRigidBodyMotionConstraint point; centreOfRotation (0.5 0.45 0.1); } */ fixedLine { sixDoFRigidBodyMotionConstraint line; //centreOfRotation (0.5 0.45 0.1); direction (0 0 1); } /* fixedAxis { sixDoFRigidBodyMotionConstraint axis; axis (0 1 0); } */ } } // ************************************************************************* // To try and solve this issue I have uninstalled and reinstalled 'make', I have changed the libraries imported and have remade the whole case from scratch again. I am quite new to openFoam so there is a good chance I have made a simple syntax error or am using the wrong libraries. However, if anyone has some tips, it would be greatly appreciated! Many thanks, Magnus |
|
![]() |
![]() |
![]() |
Tags |
sixdofdynamicmotion |
|
|