Hot News:

Unser Angebot:

  Foren auf CAD.de
  OpenFOAM
  Compilieren eines Solvers

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  Compilieren eines Solvers (1001 / mal gelesen)
Researcher23
Mitglied


Sehen Sie sich das Profil von Researcher23 an!   Senden Sie eine Private Message an Researcher23  Schreiben Sie einen Gästebucheintrag für Researcher23

Beiträge: 3
Registriert: 13.07.2016

erstellt am: 13. Jul. 2016 09:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich habe eine paar relativ grundlegende Fragen zum Thema "Compilieren eines Solvers". Ich habe versucht das folgende Beispiel nachzuvollziehen:

The applications are located in $WM_PROJECT_DIR/applications
◮ cd $WM_PROJECT_DIR/applications/solvers/incompressible
• Copy the icoFoam solver and put it in the
$WM_PROJECT_USER_DIR/applications directory
◮ cp -r icoFoam $WM_PROJECT_DIR/applications
• Rename the directory and the source file name, clean all the dependancies and
◮ mv icoFoam myIcoFoam
◮ cd icoFoam
◮ mv icoFoam.C myIcoFoam.C
◮ wclean
• Go the the Make directory and change files as follows:
myIcoFoam.C
EXE = $(FOAM_USER_APPBIN)/myIcoFoam
• Now compile the application with wmake in the myIcoFoam directory. rehash if
necessary.

Als Ausgabe erhalte ich von wmake:

SOURCE=my_icoFoam.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoReposito
ry -ftemplate-depth-100 -I/home/software/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude -I/home/software/OpenFOAM/OpenFOAM-2.3.1/src/sa
mpling/lnInclude -IlnInclude -I. -I/home/software/OpenFOAM/OpenFOAM-2.3.1/src/OpenFOAM/lnInclude -I/home/software/OpenFOAM/OpenFOAM-2.3.1/s
rc/OSspecific/POSIX/lnInclude  -fPIC -c $SOURCE -o Make/linux64GccDPOpt/my_icoFoam.o
'libNULL.so' is up to date.

Und es wird ein Verzeichnis mit folgenden Dateien angelegt:

-rw------- 1 stw a301      24 12. Jul 17:32 dependencies
-rw------- 1 stw a301      32 12. Jul 17:32 dependencyFiles
-rw------- 1 stw a301      0 12. Jul 17:32 dontIncludeDeps
-rw------- 1 stw a301    113 12. Jul 17:32 files
-rw------- 1 stw a301      37 12. Jul 17:32 filesMacros
-rw------- 1 stw a301      23 12. Jul 17:32 includeDeps
-rwx------ 1 stw a301  635009 12. Jul 17:32 libNULL.so
-rw------- 1 stw a301      31 12. Jul 17:32 localObjectFiles
-rw------- 1 stw a301 1069904 12. Jul 17:32 my_icoFoam.o
-rw------- 1 stw a301      40 12. Jul 17:32 objectFiles
-rw------- 1 stw a301    184 12. Jul 17:32 options
-rw------- 1 stw a301      24 12. Jul 17:32 sourceFiles


Soweit, so gut. Aber:

- Es scheint keine neue Applikation my_icoFoam angelegt zu werden. Wie würde die entsprechende Datei überhaupt aussehen (welche Endung haben)?
- Es ist auch nicht möglich my_icoFoam als Solver zu verwenden. OpenFoam kennt diesen Ausdruck einfach gar nicht. Bzw. wie müsste ich den neuen Solver ansprechen? Ist die Verwendung nicht ähnlich zu der Verwendung von jedem anderen Solver (z.B. icoFoam)? Oder muss ich da noch spezielle Links setzen oder ähnliches?

Hat jemand eine Idee was ich falsch mache bzw. was hier falsch läuft?

Schöne Grüße,
RS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Shor-ty
Moderator





Sehen Sie sich das Profil von Shor-ty an!   Senden Sie eine Private Message an Shor-ty  Schreiben Sie einen Gästebucheintrag für Shor-ty

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 13. Jul. 2016 10:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Researcher23 10 Unities + Antwort hilfreich

Hi und willkommen im Forum.

So wie deine Ausgabe vom kompilierer Aussieht verwendest du "wmake libso" und nicht wmake. Entsprechend machst du ne Lib (endung .o) und keine Applikation. Bin grad nicht am Rechner daher nur eine vage Aussage.

------------------
Viele Grüße,
Tobias Holzmann

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Researcher23
Mitglied


Sehen Sie sich das Profil von Researcher23 an!   Senden Sie eine Private Message an Researcher23  Schreiben Sie einen Gästebucheintrag für Researcher23

Beiträge: 3
Registriert: 13.07.2016

erstellt am: 13. Jul. 2016 13:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Tobias,

vielen Dank schon mal für Deinen Hinweise. Der war auf jeden Fall schon mal hilfreich. Allerdings bekomme ich jetzt noch beim Compilieren eine etwas kryptische Fehlermeldung, die ich nicht deuten kann:

Making dependency list for source file my_icoFoam.C
/home/software/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readPISOControls.H: In function ‘int main(int, char**)’:
/home/software/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readPISOControls.H:3: warning: unused variable ‘nOuterCorr’
/home/software/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readPISOControls.H:12: warning: unused variable ‘momentumPredictor’
/home/software/OpenFOAM/OpenFOAM-2.3.1/src/finiteVolume/lnInclude/readPISOControls.H:15: warning: unused variable ‘transonic’
/home/software/OpenFOAM/OpenFOAM-2.3.1/platforms/linux64GccDPOpt/lib/libfiniteVolume.so: undefined reference to `std::__throw_out_of_range_fmt(char const*, ...)@GLIBCXX_3.4.20'
collect2: ld returned 1 exit status
make: *** [/home/stw/OpenFOAM/stw-2.3.1/platforms/linux64GccDPOpt/bin/my_icoFoam] Error 1

Schöne Grüße,
RS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Shor-ty
Moderator





Sehen Sie sich das Profil von Shor-ty an!   Senden Sie eine Private Message an Shor-ty  Schreiben Sie einen Gästebucheintrag für Shor-ty

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 13. Jul. 2016 16:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Researcher23 10 Unities + Antwort hilfreich

Das ist natürlich jetzt nicht so einfach zu analysieren.

Geh mal in dein icoFoam (original code) rein und mach:

Code:

wclean
wmake

Wenn du da den gleichen Fehler hast ist was mit deiner Foam Kompilierung nicht in Ordnung. Dann mal folgendes machen:

Code:

cd $FOAM_SRC
cd ../
./Allwmake > log 2>&1 & tail -f log

Die Logdatei kannst du dann mal anhängen.
Alternative auch mal den ./foamInstallationTest machen. Zu finden unter OpenFOAM-2.3.1/bin/
------------------
Viele Grüße,
Tobias Holzmann

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Researcher23
Mitglied


Sehen Sie sich das Profil von Researcher23 an!   Senden Sie eine Private Message an Researcher23  Schreiben Sie einen Gästebucheintrag für Researcher23

Beiträge: 3
Registriert: 13.07.2016

erstellt am: 14. Jul. 2016 10:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Tobias,

vielen Danke für Deine Antwort. Ich habe die Ursache für das Problem jetzt glaub' ich gefunden. Es fehlte noch ein (der richtige) Compiler, den die vorher dazu laden musste mittels " module load compiler/gcc/gcc-4.9.2". Jetzt gibt es keine Fehlermeldung mehr und es wird eine exe erzeugt.

Also, danke nochmal und schönen Tag noch,
RS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Shor-ty
Moderator





Sehen Sie sich das Profil von Shor-ty an!   Senden Sie eine Private Message an Shor-ty  Schreiben Sie einen Gästebucheintrag für Shor-ty

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 14. Jul. 2016 13:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Researcher23 10 Unities + Antwort hilfreich

Gerne.

Allerdings ist das keine .exe 

------------------
Viele Grüße,
Tobias Holzmann

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz