|
[Sponsors] |
March 27, 2017, 14:42 |
Proper Orthogonal Decomposition in OpenFOAM
|
#1 |
Senior Member
Manu Chakkingal
Join Date: Feb 2016
Location: Delft, Netherlands
Posts: 129
Rep Power: 10 |
Hello all
I would like to do POD analysis in a multiregion solver (chtmultiregion solver) available in openfoam 2.3.0. What I want to do is do POD on the velocity field in the fluid region. Is there any POD post processing available in OF 2.3.0 or 2.4.0. I found a POD utility in OF extend but could use it for only single domain (only fluid no solid). Is there anyway to postprocess (do POD ) the mutiregion data generated in OF 2.3.0 in OF extend. I couldnt find any post related to it
__________________
Regards Manu |
|
October 31, 2017, 06:26 |
POD tutorials
|
#2 | |
New Member
M. Salman Siddiqui
Join Date: Mar 2015
Posts: 16
Rep Power: 11 |
Hi,
how did you do the POD for fluid? Do you have any reference tutorial? I wanted to do it on a backward facing steps. How would i generate the snapshots and apply the eignevalue decompisition on that. Any help will be highly regarded. Salman Quote:
|
||
November 17, 2019, 14:45 |
Software for POD
|
#3 |
New Member
Akash Patel
Join Date: Dec 2018
Location: Champaign, IL, USA
Posts: 20
Rep Power: 7 |
Any future users stumbling upon this thread and wishes to perform Proper Orthogonal Decomposition, we have released an open source software for performing POD on fluid velocity for OpenFOAM simulations.
Here's the link for those who are interested in using or further development. https://github.com/IllinoisRocstar/AccelerateCFD_CE |
|
June 22, 2020, 08:05 |
AccelerateCFD wmakeAll error
|
#4 | |
New Member
Anton Shevchenko
Join Date: Jan 2018
Posts: 10
Rep Power: 8 |
Quote:
Hello! Thank you for your program, looking forward using it. I've wanted to perform POD in regards to the problem I'm currently working on and found your software on this forum. Following github instructions, I've successfully compiled it on my home computer with openfoam1912 and ran a test calculation -- all went good. Practically all of my calculations however are made on a remote cluster. I tried to compile your program there with the same of-v1912, and at "wmake All" step (which is basically the only step) of installation guide I had an error. I'm not much of an IT guy so trying to make sense of error log did not help, so I figured asking you is worth a shot, if not you maybe someone else will see this). wmakeAll log is included, although the complete log file was too large and I cut out everything except the last lines where the error messages are. Best regards, Anton. |
||
July 14, 2020, 10:22 |
AccelerateCFD
|
#5 |
New Member
Akash Patel
Join Date: Dec 2018
Location: Champaign, IL, USA
Posts: 20
Rep Power: 7 |
Hello a.shevchenko,
Thank you for your interest in AccelerateCFD. Sorry for late reply. I went ahead and compiled the latest version on AccelerateCFD on public branch with OpenFOAM v-1912 and I was able to compile it without any errors. (https://github.com/IllinoisRocstar/AccelerateCFD_CE) I took a look at your log and the error you are facing is fixed in latest version. I would encourage you to try it and let us know if you are able to compile it successfully! Thank you! - Akash
__________________
We are developing an open-source software for constructing reduced order models for your CFD simulations in OpenFOAM that runs several magnitude faster. Visit the link below to learn more. AccelerateCFD - OpenFOAM based reduced order model solver for CFD using Proper Orthogonal Decomposition. |
|
July 14, 2020, 21:31 |
|
#6 |
New Member
Anton Shevchenko
Join Date: Jan 2018
Posts: 10
Rep Power: 8 |
Thank you, Akash. I've just compiled it and ran a sample case and everything appears to be fine). Again, thank you for your reply.
Anton. |
|
July 16, 2020, 05:48 |
|
#7 |
New Member
Anton Shevchenko
Join Date: Jan 2018
Posts: 10
Rep Power: 8 |
by the way, the podDict file asks for a kinematic viscosity value.
"The value of nu must be same as value of nu in transportProperties file located in constant/ directory of case" -- quote from your installation guide i replaced it with a dynamic viscosity i use in my solver and a program returned an error asking for nu... does this mean i cannot use solvers (theromphysical models) that utilize dynamic viscosity? |
|
July 27, 2020, 17:11 |
|
#8 |
New Member
Akash Patel
Join Date: Dec 2018
Location: Champaign, IL, USA
Posts: 20
Rep Power: 7 |
Can you convert it to kinematic viscosity manually and provide "nu"? Our formulation doesn't convert that automatically. Although, that is a good thing to implement. We'll look into implementing that.
Thanks!
__________________
We are developing an open-source software for constructing reduced order models for your CFD simulations in OpenFOAM that runs several magnitude faster. Visit the link below to learn more. AccelerateCFD - OpenFOAM based reduced order model solver for CFD using Proper Orthogonal Decomposition. |
|
July 28, 2020, 04:19 |
|
#9 |
New Member
Anton Shevchenko
Join Date: Jan 2018
Posts: 10
Rep Power: 8 |
Yes that's what i did)
|
|
August 7, 2020, 11:32 |
|
#10 | |
New Member
Tim Grunloh
Join Date: Jul 2012
Posts: 1
Rep Power: 0 |
Quote:
|
||
April 8, 2021, 06:52 |
|
#11 | |
New Member
Armin Sh
Join Date: Aug 2020
Posts: 1
Rep Power: 0 |
Quote:
|
||
September 29, 2022, 06:59 |
|
#12 |
New Member
Marcell Szabo-Meszaros
Join Date: Oct 2015
Posts: 9
Rep Power: 10 |
Hei ArminPolimi,
Did you, or other figure what caused the problem? Some hints for further users who struggle with it? |
|
October 12, 2022, 08:21 |
|
#13 |
New Member
Marcell Szabo-Meszaros
Join Date: Oct 2015
Posts: 9
Rep Power: 10 |
Hei,
I was able to solve it following the advice from github: https://github.com/IllinoisRocstar/A...D_CE/issues/13 It still had issues though as I use OF v8.0. For that I had to edit the CMakeLists.txt as follows: Code:
cmake_minimum_required(VERSION 3.1) # Set project metadata ######################################################### set(PROJECT_NAME "AccelerateCFD_CE") project(${PROJECT_NAME} CXX) SET(DEFAULT_INSTALL_PREFIX "$ENV{FOAM_USER_APPBIN}/../" CACHE PATH "Prefix prepended to install directories") SET(CMAKE_INSTALL_PREFIX "${DEFAULT_INSTALL_PREFIX}" CACHE INTERNAL "Prefix prepended to install directories" FORCE) set(ACFD_CE_MAJOR_VERSION 0) set(ACFD_CE_MINOR_VERSION 3) set(ACFD_CE_PATCH_VERSION 0) set(ACFD_CE_EXTRA_VERSION "" CACHE STRING "AccelerateCFD_CE extra version string") set(ACFD_CE_VERSION "${ACFD_CE_MAJOR_VERSION}.${ACFD_CE_MINOR_VERSION}") set(ACFD_CE_VERSION "${ACFD_CE_VERSION}.${ACFD_CE_PATCH_VERSION}${ACFD_CE_EXTRA_VERSION}") set(ACFD_CE_SHORT_LICENSE "GNU General Public License v3 or later (GPLv3+)") set(ACFD_CE_PUBLIC_URL "https://github.com/IllinoisRocstar/AccelerateCFD_CE") set(ACFD_CE_AUTHOR "Taiyo Wilson (lead)" "Timothy Grunloh" "Masoud Safdari" "Akash Patel" "Luke Calian" "Pavle Simonovic") set(ACFD_CE_AUTHOR_EMAIL "tpgrunloh@illinoisrocstar.com") set(ACFD_CE_DESCRIPTION "AccelerateCFD uses Proper Orthogonal Decomposition (POD), \ principle to reduce the full order CFD flow into a reduced order model which runs \ several magnitudes faster and reconstructs the flow fields.") set(PROJECT_NAME "AccelerateCFD_CE ${ACFD_CE_VERSION}") project(${PROJECT_NAME} CXX C) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_EXTENSIONS OFF) add_definitions( -std=c++11 -Dlinux64 -m64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -O3 -DNoRepository -ftemplate-depth-100 -fpermissive -DNoRepository -fPIC ) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake/Modules/) set(DEFAULT ON CACHE INTERNAL "Default value for enabled-by-default options") macro(opt OPTION HELP VALUE) option(ENABLE_${OPTION} ${HELP} ${VALUE}) set(OPT_TEXI "${OPT_TEXI}\n@item ENABLE_${OPTION}\n${HELP} (default: ${VALUE})") endmacro(opt) # set options opt(TESTING "Enable testing" ${DEFAULT}) # OF 5.x, 6.x, and 7.x #find_package(OpenFOAM REQUIRED COMPONENTS OpenFOAM turbulenceModels # incompressibleTurbulenceModels compressibleTurbulenceModels # incompressibleTransportModels compressibleTransportModels # fluidThermophysicalModels specie finiteVolume fvOptions genericPatchFields # meshTools sampling distributed) #message(STATUS "OpenFOAM include directory ${OPNF_INCLUDE_DIRS}") #message(STATUS "OpenFOAM link directory ${OPNF_LIBRARY_DIRS}") set( CMAKE_CXX_FLAGS "-Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -ftemplate-depth-100 -DOMPI_SKIP_MPICXX -O3 -fPIC" ) set( CMAKE_MODULE_LINKER_FLAGS "-Xlinker --copy-dt-needed-entries -Xlinker --no-as-needed" ) set( CMAKE_SHARED_LINKER_FLAGS "-Xlinker --copy-dt-needed-entries -Xlinker --no-as-needed" ) set( CMAKE_EXE_LINKER_FLAGS "-Xlinker --copy-dt-needed-entries -Xlinker --no-as-needed" ) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/externalLibraries) include_directories( $ENV{FOAM_SRC}/OSspecific/POSIX/lnInclude $ENV{FOAM_SRC}/OpenFOAM/lnInclude $ENV{FOAM_SRC}/triSurface/lnInclude $ENV{FOAM_SRC}/parallel/decompose/decompositionMethods/lnInclude $ENV{FOAM_SRC}/mesh/snappyHexMesh/lnInclude $ENV{FOAM_SRC}/fileFormats/lnInclude $ENV{FOAM_SRC}/surfMesh/lnInclude $ENV{FOAM_SRC}/dynamicMesh/lnInclude $ENV{FOAM_SRC}/lagrangian/basics/lnInclude $ENV{FOAM_APP}/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/lnInclude $ENV{FOAM_SRC}/edgeMesh/lnInclude $ENV{FOAM_SRC}/mesh/blockMesh/lnInclude $ENV{FOAM_SRC}/transportModels/singlePhaseTransportModel $ENV{FOAM_SRC}/MomentumTransportModels/momentumTransportModels/lnInclude $ENV{FOAM_SRC}/MomentumTransportModels/incompressible/lnInclude $ENV{FOAM_SRC}/MomentumTransportModels/compressible/lnInclude $ENV{FOAM_SRC}/thermophysicalModels/basic/lnInclude $ENV{FOAM_SRC}/finiteVolume/lnInclude $ENV{FOAM_SRC}/fvOptions/lnInclude $ENV{FOAM_SRC}/meshTools/lnInclude $ENV{FOAM_SRC}/sampling/lnInclude ) set(ACFD_CE_SRC utilities/podBasisCalc.C utilities/podPrecompute.C utilities/podROM.C utilities/podFlowReconstruct.C utilities/podPostProcess.C ) add_library(AccelerateCFD_CE ${ACFD_CE_SRC}) target_include_directories(AccelerateCFD_CE PUBLIC $ENV{FOAM_SRC}/OSspecific/POSIX/lnInclude $ENV{FOAM_SRC}/OpenFOAM/lnInclude $ENV{FOAM_SRC}/triSurface/lnInclude $ENV{FOAM_SRC}/parallel/decompose/decompositionMethods/lnInclude $ENV{FOAM_SRC}/mesh/snappyHexMesh/lnInclude $ENV{FOAM_SRC}/fileFormats/lnInclude $ENV{FOAM_SRC}/surfMesh/lnInclude $ENV{FOAM_SRC}/dynamicMesh/lnInclude $ENV{FOAM_SRC}/lagrangian/basics/lnInclude $ENV{FOAM_APP}/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK/lnInclude $ENV{FOAM_SRC}/edgeMesh/lnInclude $ENV{FOAM_SRC}/mesh/blockMesh/lnInclude $ENV{FOAM_SRC}/transportModels/singlePhaseTransportModel $ENV{FOAM_SRC}/MomentumTransportModels/momentumTransportModels/lnInclude $ENV{FOAM_SRC}/MomentumTransportModels/incompressible/lnInclude $ENV{FOAM_SRC}/MomentumTransportModels/compressible/lnInclude $ENV{FOAM_SRC}/thermophysicalModels/basic/lnInclude $ENV{FOAM_SRC}/finiteVolume/lnInclude $ENV{FOAM_SRC}/fvOptions/lnInclude $ENV{FOAM_SRC}/meshTools/lnInclude $ENV{FOAM_SRC}/sampling/lnInclude ) target_link_libraries(AccelerateCFD_CE PUBLIC /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libmomentumTransportModels.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libincompressibleMomentumTransportModels.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libincompressibleTransportModels.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libfluidThermophysicalModels.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libspecie.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libfiniteVolume.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libfvOptions.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libgenericPatchFields.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libmeshTools.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libsampling.so /opt/openfoam8/platforms/linux64GccDPInt32Opt/lib/libdistributed.so ) add_executable(podBasisCalc utilities/podBasisCalc.C) add_executable(podPrecompute utilities/podPrecompute.C) add_executable(podROM utilities/podROM.C) add_executable(podFlowReconstruct utilities/podFlowReconstruct.C) add_executable(podPostProcess utilities/podPostProcess.C) target_link_libraries(podBasisCalc AccelerateCFD_CE) target_link_libraries(podPrecompute AccelerateCFD_CE) target_link_libraries(podROM AccelerateCFD_CE) target_link_libraries(podFlowReconstruct AccelerateCFD_CE) target_link_libraries(podPostProcess AccelerateCFD_CE) install(TARGETS podBasisCalc DESTINATION bin) install(TARGETS podPrecompute DESTINATION bin) install(TARGETS podROM DESTINATION bin) install(TARGETS podFlowReconstruct DESTINATION bin) install(TARGETS podPostProcess DESTINATION bin) |
|
June 5, 2023, 00:26 |
|
#14 |
New Member
ankita
Join Date: Sep 2021
Posts: 1
Rep Power: 0 |
||
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
parallel decomposition method in openfoam | hz283 | OpenFOAM | 14 | January 23, 2021 05:58 |
"PROPER ORTHOGONAL DECOMPOSITION" | dpshaka | Main CFD Forum | 7 | June 12, 2019 09:42 |
[snappyHexMesh] How to define to right point for locationInMesh | Mirage12 | OpenFOAM Meshing & Mesh Conversion | 7 | March 13, 2016 14:07 |
Cross-compiling OpenFOAM 1.7.0 on Linux for Windows 32 and 64bits with Mingw-w64 | wyldckat | OpenFOAM Announcements from Other Sources | 3 | September 8, 2010 06:25 |
On Proper Orthogonal Decomposition | R.D.Prabhu | Main CFD Forum | 0 | March 15, 2000 17:31 |