|
[Sponsors] |
How to run an external solver? ([OpenFOAM.com] v2006, docker, win7) |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
October 6, 2020, 06:39 |
How to run an external solver? ([OpenFOAM.com] v2006, docker, win7)
|
#1 |
New Member
Dmitry
Join Date: Sep 2020
Location: Moscow, RU
Posts: 16
Rep Power: 6 |
Hello everyone!
I'd like to perform a detonation simulation in a shock tube with detailed chemical kinetics using a solver rhoReactingCentralFoam. Is there a way to add this solver to my docker installation of OpenFoam v2006 on win7? Or do I have to install OF another way in order to do this task? I am new to OpenFoam, I have installed OF via docker on win 7 according to instruction here and then I've started learning with tutorials from József Nagy. I configured docker to be able to modify and perform cases in my workingDir.. Best regards, Dmitry |
|
October 8, 2020, 16:15 |
|
#2 |
Senior Member
Klaus
Join Date: Mar 2009
Posts: 281
Rep Power: 22 |
Hello,
see: https://develop.openfoam.com/Develop...ompiled/docker How do I compile code? The Docker environment contains a full OpenFOAM development environment so all wmake, wclean etc. commands work (it is running the actual environment OpenFOAM was compiled in!) |
|
October 27, 2020, 17:23 |
|
#3 | |
New Member
Dmitry
Join Date: Sep 2020
Location: Moscow, RU
Posts: 16
Rep Power: 6 |
Quote:
However, as I've realized, that this solver requires openfoam v7, I decided to run ubuntu and openfoam as a virtual machine using Oracle VM Virtual box. |
||
February 1, 2021, 10:38 |
error when compiling a new solver "isoAdvector-mastert"
|
#4 |
New Member
TN
Join Date: Dec 2020
Posts: 4
Rep Power: 5 |
Hello everyone,
i'm trying to compile a new solver called isoadvector-mastert i face this error : nada@nada-VirtualBox:~/Selective-laser-melting/isoAdvector-mastert/OpenFOAM-dev/src$ ./Allwmake + wmake libso wmake libso . g++ -std=c++14 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 -DNoRepository -ftemplate-depth-100 -I/home/nada/OpenFOAM-dev/src/finiteVolume/lnInclude -I/home/nada/OpenFOAM-dev/src/meshTools/lnInclude -IlnInclude -I. -I/home/nada/OpenFOAM-dev/src/OpenFOAM/lnInclude -I/home/nada/OpenFOAM-dev/src/OSspecific/POSIX/lnInclude -fPIC -c isoAdvection/isoAdvection.C -o Make/linux64GccDPInt32Opt/isoAdvection/isoAdvection.o isoAdvection/isoAdvection.C: In constructor ‘Foam::isoAdvection::isoAdvection(Foam::volScalarF ield&, const surfaceScalarField&, const volVectorField&)’: isoAdvection/isoAdvection.C:58:45: error: binding reference of type ‘Foam::scalarField&’ {aka ‘Foam::Field<double>&’} to ‘const Foam::Field<double>’ discards qualifiers 58 | alpha1In_(alpha1.oldTime().internalField()), // Need to reorganise | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ isoAdvection/isoAdvection.C: In member function ‘void Foam::isoAdvection::timeIntegratedFlux()’: isoAdvection/isoAdvection.C:152:44: error: binding reference of type ‘Foam::scalarField&’ {aka ‘Foam::Field<double>&’} to ‘const Foam::Field<double>’ discards qualifiers 152 | scalarField& dVfIn = dVf_.internalField(); | ~~~~~~~~~~~~~~~~~~^~ isoAdvection/isoAdvection.C:355:31: error: ‘GeometricBoundaryField’ in ‘Foam::surfaceScalarField’ {aka ‘class Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>’} does not name a type 355 | const surfaceScalarField::GeometricBoundaryField& phib = phi_.boundaryField(); | ^~~~~~~~~~~~~~~~~~~~~~ isoAdvection/isoAdvection.C:356:31: error: ‘GeometricBoundaryField’ in ‘Foam::surfaceScalarField’ {aka ‘class Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>’} does not name a type 356 | const surfaceScalarField::GeometricBoundaryField& magSfb = mesh_.magSf().boundaryField(); | ^~~~~~~~~~~~~~~~~~~~~~ isoAdvection/isoAdvection.C:357:25: error: ‘GeometricBoundaryField’ is not a member of ‘Foam::surfaceScalarField’ {aka ‘Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>’} 357 | surfaceScalarField::GeometricBoundaryField& dVfb = dVf_.boundaryField(); | ^~~~~~~~~~~~~~~~~~~~~~ isoAdvection/isoAdvection.C:357:49: error: ‘dVfb’ was not declared in this scope; did you mean ‘dVf_’? 357 | surfaceScalarField::GeometricBoundaryField& dVfb = dVf_.boundaryField(); | ^~~~ | dVf_ isoAdvection/isoAdvection.C:379:33: error: ‘phib’ was not declared in this scope; did you mean ‘phi_’? 379 | const scalar phiP = phib[patchi][patchFacei]; | ^~~~ | phi_ isoAdvection/isoAdvection.C:383:38: error: ‘magSfb’ was not declared in this scope; did you mean ‘magSf’? 383 | const scalar magSf = magSfb[patchi][patchFacei]; | ^~~~~~ | magSf isoAdvection/isoAdvection.C: In member function ‘void Foam::isoAdvection::syncProcPatches(Foam::surfaceS calarField&, const surfaceScalarField&)’: isoAdvection/isoAdvection.C:1127:39: error: ‘nonBlocking’ is not a member of ‘Foam::Pstream’ 1127 | PstreamBuffers pBufs(Pstream::nonBlocking); | ^~~~~~~~~~~ isoAdvection/isoAdvection.C:1191:64: error: binding reference of type ‘Foam::scalarField&’ {aka ‘Foam::Field<double>&’} to ‘const Foam::Field<double>’ discards qualifiers 1191 | scalarField& localFlux = dVf.boundaryField()[patchi]; | ^ In file included from isoAdvection/isoAdvection.H:389, from isoAdvection/isoAdvection.C:24: isoAdvection/isoAdvectionTemplates.C: In instantiation of ‘void Foam::isoAdvection::faceValue(Foam::GeometricField <Type, Foam::fvsPatchField, Foam::surfaceMesh>&, Foam::label, const Type&) const [with Type = double; Foam::label = int]’: isoAdvection/isoAdvection.C:902:70: required from here isoAdvection/isoAdvectionTemplates.C:76:34: error: assignment of read-only location ‘(&(& f)->Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>::internalField())->Foam:imensionedField<double, Foam::surfaceMesh>::<anonymous>.Foam::Field<double >::<anonymous>.Foam::List<double>::<anonymous>.Foa m::UList<double>:perator[](((Foam::label)facei))’ 76 | f.internalField()[facei] = value; | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ isoAdvection/isoAdvectionTemplates.C:101:47: error: assignment of read-only location ‘(&(&(& f)->Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>::boundaryField())->Foam::GeometricField<double, Foam::fvsPatchField, Foam::surfaceMesh>::Boundary::<anonymous>.Foam::Fi eldField<Foam::fvsPatchField, double>::<anonymous>.Foam::PtrList<Foam::fvsPatchF ield<double> >::<anonymous>.Foam::UPtrList<Foam::fvsPatchField< double> >:perator[](((Foam::label)patchi)))->Foam::fvsPatchField<double>::<anonymous>.Foam::Fi eld<double>::<anonymous>.Foam::List<double>::<anon ymous>.Foam::UList<double>:perator[](((Foam::label)patchFacei))’ 101 | f.boundaryField()[patchi][patchFacei] = value; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ make: *** [/home/nada/OpenFOAM-dev/wmake/rules/General/transform:26: Make/linux64GccDPInt32Opt/isoAdvection/isoAdvection.o] Error 1 + wmake libso finiteVolume/interpolationSchemes wmake libso finiteVolume/interpolationSchemes |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[ANSYS Meshing] Help with element size | sandri_92 | ANSYS Meshing & Geometry | 14 | November 14, 2018 08:54 |
Hybrid discretisation - blend factor | gcoopermax | CFX | 5 | September 23, 2016 09:05 |
Pinning the processors in cluster to run a solver | coolcrasher | OpenFOAM Running, Solving & CFD | 0 | November 5, 2015 07:11 |
Can't get data from OpenFoam to external solver using externalCoupled | perry | OpenFOAM Running, Solving & CFD | 4 | May 26, 2014 09:09 |
CFX 5.5 | Roued | CFX | 1 | October 2, 2001 17:49 |