Giter VIP home page Giter VIP logo

Comments (27)

AeroDME avatar AeroDME commented on July 22, 2024 4

It does compile with GNU Fortran (gfortran). That being said, I needed to modify a few files. Mostly the OPEN commands were non standard. Additionaly you need to set switches to turn off bounds checking, accept Hollerith notation, and implicitly apply the SAVE command.

Compiler switches I needed:
-fno-range-check -fno-automatic -std=legacy

You can check out my fork:
https://github.com/AeroDME/NASTRAN-95

The makefile is in the top level directory. It uses gfortan, and assumes that you have python in your $PATH. I did it in a linux environment, and it should work in a cygwin environment with minimal fuss.

Cheers.

from nastran-95.

sylvestre avatar sylvestre commented on July 22, 2024 3

FYI, this is packaged in Debian:
https://packages.debian.org/sid/nastran

And the sources contain a autotools build system: https://github.com/ldallolio/NASTRAN-95 by @ldallolio

from nastran-95.

sylvestre avatar sylvestre commented on July 22, 2024 1

If you want to build the Debian/Ubuntu package, the method is super easy
$ sudo apt-get build-dep nastran
$ apt-get source nastran
$ cd nastran-*
$ dpkg-buildpackage -nc -b

from nastran-95.

dhhudson avatar dhhudson commented on July 22, 2024

from nastran-95.

AeroDME avatar AeroDME commented on July 22, 2024

Hi Dave,

Yeah, this requires a little knowledge of compiling. You could read up on CYGWIN which is a linux environment that runs on windows. I am sure a windows fortran compiler will do it, and you can use the makefile specified prevously. But I don't know where you can get just the binaries. In fact, I am not sure the NASA license permits distribution of the binaries.

Also, make sure this is what you want. You cannot necessarily take a MSC/NX NASTRAN bulk data file and just run it. It doesn't know what SOL 101 OR NLSTATIC means. It is not modern.

Cheers.

from nastran-95.

dhhudson avatar dhhudson commented on July 22, 2024

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

I was able to build twuerfl/NASTRAN-95 on mac os 10.12 but it segfaults when I run one of the test input files.

==== NASTRAN is beginning execution of bar ====

Program received signal SIGSEGV: Segmentation fault - invalid memory reference.

Backtrace for this error:
#0  0x16746bf8f
#1  0x16746b772
#2  0x7fffb1879b39
#3  0x1079eb44f
#4  0x1079eb232
#5  0x1079e5fea
#6  0x1078d4273
#7  0x1079fb9c4
#8  0x1077f997f
#9  0x107a13b1d
Segmentation fault

So I think I will give yours a try. Do you think it will work?

from nastran-95.

AeroDME avatar AeroDME commented on July 22, 2024

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

I intend to install everything into /opt/local/... I'm aware that the nastran executable has hardcoded paths, e.g. set rfdir=/usr/users/bob/nast95/rf and I'll need to patch these. What is the expected directory tree layout?

Thanks

from nastran-95.

AeroDME avatar AeroDME commented on July 22, 2024

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

I didn't recognize the string replacement at first. I had to look at my python reference to see that you're using string replacement with explicit numbering (I'm used to %(foo)s ), setting RFDIR = nastran_home/rf. nastran_home is set to the absolute path where sbin/nastran.py resides.

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

I tried to build it this morning without success. Asside from several warnings of the type:

Warning: Array reference at (1) out of bounds (97 > 1) in loop beginning at (2)

It returned with an error:

:info:build /opt/local/bin/gfortran-mp-8 -g -fno-range-check -fno-automatic -std=legacy -Iinclude -Llib -Jobj obj/nastrn.o -lnas -o bin/nastran.x    # Note that "-lnas" is after "obj/nastrn.o"!
:info:build ld: warning: ignoring file lib/libnas.a, file was built for archive which is not the architecture being linked (x86_64): lib/libnas.a
:info:build Undefined symbols for architecture x86_64:
:info:build   "_btstrp_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build   "_dbmint_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build   "_locfx_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build   "_mesage_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build   "_waltim_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build   "_xsem00_", referenced from:
:info:build       _MAIN__ in nastrn.o
:info:build ld: symbol(s) not found for architecture x86_64
:info:build collect2: error: ld returned 1 exit status
:info:build make: *** [bin/nastran.x] Error 1

This usually means that libnas.a is compiled for 32-bit, but the rest of the project is compiled for 64-bit.

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

According to this discussion I patched the makefile and used libtool to get it to compile.

So, after building I end up with:

lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSDBCL -> alt/COSDBCL
lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSDDAM -> alt/COSDDAM
lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSDFVA -> alt/COSDFVA
lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSHYD1 -> alt/COSHYD1
lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSHYD2 -> alt/COSHYD2
lrwxr-xr-x     1 macports  admin        11 Dec 22 16:23 COSMFVA -> alt/COSMFVA
-rw-r--r--     1 macports  admin     49152 Mar 13  2017 NASA Open Source Agreement-NASTRAN 95.doc
-rw-r--r--     1 macports  admin     16891 Dec 22 16:23 NASINFO
-rw-r--r--     1 macports  admin  63670639 Mar 13  2017 NASTRAN Programmers Manual.pdf
-rw-r--r--     1 macports  admin  13989025 Mar 13  2017 NASTRAN Users Manual 2.pdf
drwxr-xr-x  1057 macports  admin     35938 Dec 22 16:23 OUTPUT
-rw-r--r--     1 macports  admin       859 Mar 13  2017 README.md
lrwxr-xr-x     1 macports  admin        19 Dec 22 16:23 RSCARDS -> OUTPUT/t04021a.dict
drwxr-xr-x     8 macports  admin       272 Mar 13  2017 alt
drwxr-xr-x    42 macports  admin      1428 Mar 13  2017 bd
drwxr-xr-x    23 macports  admin       782 Dec 22 16:23 bin
drwxr-xr-x   134 macports  admin      4556 Mar 13  2017 demoout
drwxr-xr-x    10 macports  admin       340 Mar 13  2017 include
drwxr-xr-x   219 macports  admin      7446 Mar 13  2017 inp
drwxr-xr-x     6 macports  admin       204 Dec 22 16:23 lib
-rw-r--r--     1 macports  admin      7060 Dec 22 16:20 makefile
drwxr-xr-x   115 macports  admin      3910 Mar 13  2017 mds
drwxr-xr-x  1652 macports  admin     56168 Mar 13  2017 mis
drwxr-xr-x  1810 macports  admin     61540 Dec 22 16:23 obj
drwxr-xr-x    41 macports  admin      1394 Mar 13  2017 obsolete
drwxr-xr-x    29 macports  admin       986 Mar 13  2017 rf
drwxr-xr-x     5 macports  admin       170 Mar 13  2017 sbin
drwxr-xr-x     7 macports  admin       238 Mar 13  2017 src
drwxr-xr-x    13 macports  admin       442 Mar 13  2017 um

It appears the OUTPUT directory contains test runs. Looking at one of the f06 files:

0*** SYSTEM FATAL MESSAGE, RFOPEN CAN NOT OPEN /opt/local/var/macports/build/_Users_marbre_
0*** SYSTEM FATAL MESSAGE. RFCLSE/RFOPEN ERROR.  LU =   0

I guess this is because I'm building in /opt/local/... whereas the user accounts are in /Users/... on macs?

from nastran-95.

mbrethen avatar mbrethen commented on July 22, 2024

For the moment, I have installed these directories in /opt/local/libexec/NASTRAN-95:

drwxr-xr-x  23 root  admin  782 Dec 23 18:07 bin
drwxr-xr-x  10 root  admin  340 Dec 23 18:07 include
drwxr-xr-x   6 root  admin  204 Dec 23 18:07 lib
drwxr-xr-x  29 root  admin  986 Dec 23 18:07 rf
drwxr-xr-x   5 root  admin  170 Dec 23 18:07 sbin

I've set nastran_home to this directory and created a symlink to sbin/nastran.py in /opt/local/bin, which is in my PATH.

I ran a simple bar input file and the f06 indicated it finished successfully.

bin/nasthelp.x won't load the .TXT files (says they don't exist). The text files are in the bin directory.

Have you used nastplot.x, chkfil.x or ff.x?

What are the fortran files in the obsolete folder?

from nastran-95.

harryschaeffer avatar harryschaeffer commented on July 22, 2024

Building nastran-95 is not for the faint of heart; and at the end of the day, assuming you are persistent, you will end up with a obsolete code. That being said I have had success using CODE BLOCKS with ubuntu linux 18.04. ( Ubuntu can also be run in Win 10.) I created several fortran library projects as well as the main application finally produced a running executable.

The biggest plus is that it incorprates the DMAP compiler and runs the example problems that come with the release. The element library and the solvers are woefully obsolete: it represents 30 year old technology. However, if you have the time and expertise you can use what I call the NOS (Nastran Operating System) to create a modern up-to-date system. Think of combining JuliaFEM element modules in a rather elegant nastran system.

I don't want to get bogged down with raising 95 from the library of dead codes but would be happy to respond to requests from those in academia and consultants like Dave for a copy of my code that I call CML (Computational Mechanics Laboratory). I believe you will be impressed with it. Contact me if you are interested.

from nastran-95.

dhhudson avatar dhhudson commented on July 22, 2024

from nastran-95.

harryschaeffer avatar harryschaeffer commented on July 22, 2024

from nastran-95.

diegomagela avatar diegomagela commented on July 22, 2024

Hello all.

Can someone help me to compile that or have a compiled example to follow? I'm on Ubuntu.
For example:

  1. Do that
  2. Than do that
  3. ...
    .
    .
    .
    N. Finsh

from nastran-95.

harryschaeffer avatar harryschaeffer commented on July 22, 2024

from nastran-95.

harryschaeffer avatar harryschaeffer commented on July 22, 2024

from nastran-95.

harryschaeffer avatar harryschaeffer commented on July 22, 2024

from nastran-95.

Foadsf avatar Foadsf commented on July 22, 2024

Hello everybody,

We have some of the MYSTRAN, pyNASTRAN , and FreeCAD folks at the NASTRAN Discord channel working to get this going. It would be great to have you over there as well. let's see if we can revive this initiative.

from nastran-95.

Foadsf avatar Foadsf commented on July 22, 2024

For those who end up here looking for ComLab, @harryschaeffer has now released ComLab as a freemium software. More information here

https://www.mystran.com/forums/showthread.php?tid=58

from nastran-95.

zchMas avatar zchMas commented on July 22, 2024

I make a dir called opt under /home, with copying nastran-95-master,and building it ,and I success,but when I test the job d010000a.inp I get a fatal " RFOPEN CAN NOT OPEN /public1/home/sc91522/opt/NASTRAN-95-master/", can anyone help me recorrect this issue? added that my system is contos 7.9 x64

from nastran-95.

zchMas avatar zchMas commented on July 22, 2024

Do u mean that I must build it under the root dir ?

from nastran-95.

woodifsh avatar woodifsh commented on July 22, 2024

It does compile with GNU Fortran (gfortran). That being said, I needed to modify a few files. Mostly the OPEN commands were non standard. Additionaly you need to set switches to turn off bounds checking, accept Hollerith notation, and implicitly apply the SAVE command.

Compiler switches I needed:
-fno-range-check -fno-automatic -std=legacy

You can check out my fork:
https://github.com/AeroDME/NASTRAN-95

The makefile is in the top level directory. It uses gfortan, and assumes that you have python in your $PATH. I did it in a linux environment, and it should work in a cygwin environment with minimal fuss.

Cheers.

It seems that 'SMCOMX.COM' and 'MMACOM.COM' are necessary files in the 'mis' folder, but these two files are missing in the current version.

from nastran-95.

zchMas avatar zchMas commented on July 22, 2024

from nastran-95.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.