CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Programming & Development

how to compile the coupledMatrix librairies ?

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By herbert

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 15, 2010, 15:12
Default how to compile the coupledMatrix librairies ?
  #1
Cyp
Senior Member
 
Cyprien
Join Date: Feb 2010
Location: Stanford University
Posts: 299
Rep Power: 18
Cyp is on a distinguished road
Hi!

I would like to use conjugateHeatTransfer in OpenFOAM 1.6. For this purpose I picked up the "applications/conjugate" and "src/coupledMatrix" folder from the OpenFOAM-1.5-dev to my own user folder.

First I need to compile the coupledMatrix librairies. I try just the wmake command, but it doesn't work.

If anyone have a solution, it would be a great help for me.
Cyp is offline   Reply With Quote

Old   June 15, 2010, 19:38
Default
  #2
Senior Member
 
mturcios777's Avatar
 
Marco A. Turcios
Join Date: Mar 2009
Location: Vancouver, BC, Canada
Posts: 740
Rep Power: 28
mturcios777 will become famous soon enough
Libraries are compiled by typing wmake libso <name of library>
mturcios777 is offline   Reply With Quote

Old   June 16, 2010, 04:27
Default
  #3
Senior Member
 
Stefan Herbert
Join Date: Dec 2009
Location: Darmstadt, Germany
Posts: 129
Rep Power: 17
herbert is on a distinguished road
Hi Cyp,

I'm not sure if its possible to use coupledMatrix in 1.6. Just compiling it won't work, because the OpenFOAM library in 1.5-dev is different to that of 1.6. I think the easiest way to use coupledMatrix would be to install OpenFOAM-1.5-dev completely.

Regards,
Stefan
mm.abdollahzadeh likes this.
herbert is offline   Reply With Quote

Old   June 1, 2011, 11:03
Default conjugateHeatFoam with OpenFOAM 1.7.1
  #4
Member
 
Tibor Nyers
Join Date: Jul 2010
Location: Hungary
Posts: 91
Rep Power: 16
Toorop is on a distinguished road
Hi All,

I'm trying to get the conjugateHeatFoam(1.6-ext) solver by Hrvoje Jasak up and running in OpenFOAM version 1.7.1.

I followed the instructions of Eric Paterson's Getting started with OpenFOAM. So as he advised I made the folder hierarchy for user developed code.
$WM_PROJECT_USER_DIR
|-- applications
|-- lib
|-- run
‘-- src

I dl the desired solver and library combo with svn into the appropriate directories:
Code:
svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Core/OpenFOAM-1.6-ext/applications/solvers/coupled/conjugateHeatFoam/

svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Core/OpenFOAM-1.6-ext/src/coupledMatrix/
Compiling the coupledMatrix library:
Code:
wmake libso
The error message after that:
Code:
In file included from coupledLduMatrix/coupledLduMatrix.C:36:0:
coupledLduMatrix/coupledLduMatrix.H:109:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:109:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:119:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:119:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:129:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:129:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:139:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:139:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C:118:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:118:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::Amul(Foam::FieldField<Foam::Field, double>&, const Foam::FieldField<Foam::Field, double>&, const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:139:24: error: ‘const class Foam::lduMatrix’ has no member named ‘AmulCore’
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:159:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:159:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::Tmul(Foam::FieldField<Foam::Field, double>&, const Foam::FieldField<Foam::Field, double>&, const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:180:24: error: ‘const class Foam::lduMatrix’ has no member named ‘TmulCore’
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:198:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:198:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::initMatrixInterfaces(const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, const Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:211:28: error: invalid types ‘const int[Foam::label]’ for array subscript
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:223:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:223:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::updateMatrixInterfaces(const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, const Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:236:28: error: invalid types ‘const int[Foam::label]’ for array subscript
make: *** [Make/linuxGccDPOpt/coupledLduMatrix.o] Error 1
After searching for solutions on the net, I've found out that many people have encountered this problem but no one has came up with a real solution. It would be nice to know how to setup this solver since the whole structure of OpenFOAM was designed in mind of extensibility.

Unfortunately I'm not a linux/OpenFOAM expert by any means.

Thanks!
Toorop is offline   Reply With Quote

Old   June 1, 2011, 11:37
Default
  #5
Senior Member
 
Ben K
Join Date: Feb 2010
Location: Ottawa, Canada
Posts: 140
Rep Power: 19
benk is on a distinguished road
I would say stick with 1.6-ext if you want to use the coupledMatrix, there are too many issues bringing these types of extended functionality into the non ext/dev versions. AFAIK, there isn't any reason to want to use 1.7.x over 1.6-ext anyway.
benk is offline   Reply With Quote

Old   June 2, 2011, 04:54
Default
  #6
Member
 
Tibor Nyers
Join Date: Jul 2010
Location: Hungary
Posts: 91
Rep Power: 16
Toorop is on a distinguished road
Thx for your reply, I will use the extended version then.
Toorop is offline   Reply With Quote

Old   June 2, 2013, 16:02
Default
  #7
Senior Member
 
mahdi abdollahzadeh
Join Date: Mar 2011
Location: Covilha,Portugal
Posts: 153
Rep Power: 15
mm.abdollahzadeh is on a distinguished road
Quote:
Originally Posted by Toorop View Post
Hi All,

I'm trying to get the conjugateHeatFoam(1.6-ext) solver by Hrvoje Jasak up and running in OpenFOAM version 1.7.1.

I followed the instructions of Eric Paterson's Getting started with OpenFOAM. So as he advised I made the folder hierarchy for user developed code.
$WM_PROJECT_USER_DIR
|-- applications
|-- lib
|-- run
‘-- src

I dl the desired solver and library combo with svn into the appropriate directories:
Code:
svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Core/OpenFOAM-1.6-ext/applications/solvers/coupled/conjugateHeatFoam/

svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Core/OpenFOAM-1.6-ext/src/coupledMatrix/
Compiling the coupledMatrix library:
Code:
wmake libso
The error message after that:
Code:
In file included from coupledLduMatrix/coupledLduMatrix.C:36:0:
coupledLduMatrix/coupledLduMatrix.H:109:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:109:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:119:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:119:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:129:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:129:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.H:139:23: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.H:139:54: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C:118:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:118:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::Amul(Foam::FieldField<Foam::Field, double>&, const Foam::FieldField<Foam::Field, double>&, const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:139:24: error: ‘const class Foam::lduMatrix’ has no member named ‘AmulCore’
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:159:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:159:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::Tmul(Foam::FieldField<Foam::Field, double>&, const Foam::FieldField<Foam::Field, double>&, const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:180:24: error: ‘const class Foam::lduMatrix’ has no member named ‘TmulCore’
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:198:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:198:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::initMatrixInterfaces(const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, const Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:211:28: error: invalid types ‘const int[Foam::label]’ for array subscript
coupledLduMatrix/coupledLduMatrix.C: At global scope:
coupledLduMatrix/coupledLduMatrix.C:223:11: error: ‘lduInterfaceFieldPtrsListList’ does not name a type
coupledLduMatrix/coupledLduMatrix.C:223:42: error: ISO C++ forbids declaration of ‘interfaces’ with no type
coupledLduMatrix/coupledLduMatrix.C: In member function ‘void Foam::coupledLduMatrix::updateMatrixInterfaces(const Foam::PtrList<Foam::FieldField<Foam::Field, double> >&, const int&, const Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&, Foam::direction) const’:
coupledLduMatrix/coupledLduMatrix.C:236:28: error: invalid types ‘const int[Foam::label]’ for array subscript
make: *** [Make/linuxGccDPOpt/coupledLduMatrix.o] Error 1
After searching for solutions on the net, I've found out that many people have encountered this problem but no one has came up with a real solution. It would be nice to know how to setup this solver since the whole structure of OpenFOAM was designed in mind of extensibility.

Unfortunately I'm not a linux/OpenFOAM expert by any means.

Thanks!

Hi Tibor

Im doing the same for openfoam 2.1x
I have solved a part of the problem at the moment.
first of all you need to add blockLduMatrix to your src/openfoam/matrices/ folder

secondly u need to add the some folders to src/openfoam/matrices/ldumatrixes/lduAddressing/lduInterfaceFields/ *check the same directory in openfoam 1.6ext)

third you need to add some files also to src/openfoam/matrices/ldumatrixes/lduAddressing/lduInterface/

forth u need to modify the lduInterfaceFieldPtrsList.H according to openfoam1.6 ext

if u recompile your openfoam and the compile coupledmatrix library the errors will disappear but u wil have still errors.

u need again modify the ldumatrix.H and ldumatrixATmul.C the if compile the library

u will just have this error

Code:
coupledLduSolver/cgSolver/coupledCgSolver.C:154: error: no matching function for call to ‘gSumProd(Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&)’
coupledLduSolver/cgSolver/coupledCgSolver.C:172: error: no matching function for call to ‘gSumProd(Foam::FieldField<Foam::Field, double>&, Foam::FieldField<Foam::Field, double>&)’
at the moment i don't know how to solve this. if u have already solve it , please share ur experince
mm.abdollahzadeh is offline   Reply With Quote

Old   June 16, 2013, 09:21
Default
  #8
Senior Member
 
mahdi abdollahzadeh
Join Date: Mar 2011
Location: Covilha,Portugal
Posts: 153
Rep Power: 15
mm.abdollahzadeh is on a distinguished road
Dear All

I have compiled it successfully for openfoam 2.1x.

Best
Mahdi
mm.abdollahzadeh is offline   Reply With Quote

Old   December 18, 2014, 07:10
Default
  #9
New Member
 
Bahram's Avatar
 
Bahram Haddadi
Join Date: Feb 2014
Location: Vienna, Austria
Posts: 20
Rep Power: 12
Bahram is on a distinguished road
Dear Mahdi

Hi

I know it is an old thread, you reported that you were successful in importing coupledMatrix class from foam-ext! Can you share your experience how you did it?

Thanks
Bahram
Bahram is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
ATTN ALL: SOLUTON TO UDF COMPILE PROBLEM Rizwan Fluent UDF and Scheme Programming 40 March 18, 2018 07:05
DUNS compile with VC++, VF or gcc/g77 in PC Ali Irvi Main CFD Forum 17 August 6, 2014 10:19
PV3FoamReader compile error.... PEM_GUY OpenFOAM Installation 6 April 5, 2010 18:22
Error compile file udf czfluent Fluent UDF and Scheme Programming 24 September 26, 2009 14:24
Can someone PLEASE document the development version installation bernd OpenFOAM Installation 76 November 14, 2008 22:51


All times are GMT -4. The time now is 03:12.