Author Topic: Error of FEAP 8.4 on Ubuntu 14.04 LTS  (Read 7812 times)

joewang

  • Jr. Member
  • **
  • Posts: 18
Error of FEAP 8.4 on Ubuntu 14.04 LTS
« on: August 11, 2016, 08:55:49 AM »
Dear all,

I have installed feap84 on my machine which has 64-bit Ubuntu 14.04 LTS. Everything works well and original example cases runs good until I was trying to run my own case with a "tie" command. The error message shows as:

At line 75 of file opnfil.f (unit = 12, file = 'ȇ϶(unreadable code)')
Fortran runtime error: File 'IXhome/...' does not exist

Where the the first "/" in the file path has been replaced with "IX". And the unreadable code always changes. I tried to add a "tie" command in the original example case "IEX1". The same problem showed up.

Please let me know if you got any idea of this error. Thank you very much.

Joe

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #1 on: August 12, 2016, 08:42:50 AM »
Something is getting mangled.  First make sure that you are using the integer8 includes (since you have a 64bit machine).
If not, rebuild from scratch.

Otherwise try running the code in a gdb to trace where the filenames are getting overwritten.  Start in opnfil with the reported error and trace backwards.

joewang

  • Jr. Member
  • **
  • Posts: 18
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #2 on: August 22, 2016, 09:22:14 AM »
Thank you for your answers.
I've double checked my makefile.in, it is using the integer8.
And I've tried running feap in gdb, and found some problems. In "opnfil.f", the initial input file path is "IXhome/..." already. This is come from "ptieix.f". After reading the code, I found "ptieix.f" seems intentionally change the file path into the form with "IX" at beginning. It can even be read from the description where it says "Purpose: Save element data in file 'IXxxxxx'". I'm kind of stacked here.
Also, I've tried feappv on the same OS, the "tie" commend works well there.

Joe

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #3 on: August 22, 2016, 02:01:45 PM »
We save the element file before ties to allow the mesh to be untied during analysis.  Feappv does not. So is the problem the path or the name of the file?

joewang

  • Jr. Member
  • **
  • Posts: 18
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #4 on: August 23, 2016, 07:30:26 AM »
Thank you for replying, Prof. Taylor.
The error information shows:
Fortran runtime error: File 'IXhome/...(path).../IEX(filename)' does not exist.

While using GDB, I found out this is input to opnfil.f from ptieix.f as "name" with exact same string. However, when I tried to look up the variable "name" in opnfil.f, it shows:
(gdb) p name
Cannot access memory at address 0x7ffffffff000

(gdb) bt
#0  opnfil (mac=<error reading variable: Cannot access memory at address 0x8b4000>,
    name=<error reading variable: Cannot access memory at address 0x7ffffffff000>, iopl=-1, ios=12, exst=.FALSE., _mac=6, _name=129)
    at opnfil.f:75
#1  0x0000000000424896 in ptieix (id=..., ix=..., ntyp=..., f=..., isw=1) at ptieix.f:54
#2  0x000000000040aa3d in pcontr () at pcontr.f:1270
#3  0x0000000000402915 in feap () at feap84.f:189
#4  0x000000000040294b in main (argc=1, argv=0x7fffffffe336) at feap84.f:195
#5  0x00007ffff6ecbf45 in __libc_start_main (main=0x402917 <main>, argc=1, argv=0x7fffffffdfd8, init=<optimized out>,
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdfc8) at libc-start.c:287
#6  0x0000000000402709 in _start ()


I'm not sure if there could be something wrong with the memory allocation. Hope these information can help.

Best,
Joe

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #5 on: August 23, 2016, 10:11:26 AM »
This error is caused by the set in the file "ptieix.f" in the ./program directory.  I need to know what the file thinks it is.  Could you do a write of 'finp' to see what the characters are in the input file path.  Just add

                  write(*,*) finp(1:j-1)
after the statement that sets j ( j = index(finp,' ')

This should help us set the correct information.

joewang

  • Jr. Member
  • **
  • Posts: 18
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #6 on: August 24, 2016, 07:56:21 AM »
I used to check finp in ptieix.f with GDB. It shows finp as the path of the input file:
" /home/xiaogang/Documents/test/IEX1"
             (username)                       (filename)

I just modified the ptieix.f following your suggestion. It shows the same result before the error information. 

-Joe


Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #7 on: August 24, 2016, 02:38:51 PM »
Can you try the attached file to see if it corrects the problem you are having with the creation of the 'IX' file?

joewang

  • Jr. Member
  • **
  • Posts: 18
Re: Error of FEAP 8.4 on Ubuntu 14.04 LTS
« Reply #8 on: August 25, 2016, 01:38:15 PM »
Thank you so much. It works.
It seems the old version only has this problem when the file is input with the full path. Before replacing the code, I tried to go to the exact directory before run the FEAP and input only the file name rather than the full path. It works well. After replacing the code, now it is OK even I input a full path.
Again, thank you for your continuous and patient help.

-Joe