Problem reading op2. Seemingly related to OES1X! Table

23 views
Skip to first unread message

Brian Russell

unread,
Dec 12, 2024, 12:02:44 AM12/12/24
to pyNastran Discuss
Hi Steve, 

  I thought I just posted a message here, but don't see it in the message list, so posting again to be sure it gets through.  Apologies if I am double messaging you.  Running into an issue reading in a .op2 file and getting this message:

DEBUG:   op2_scalar.py:607            set_subcases - subcases = []
DEBUG:   op2.py:589                   combine=True
DEBUG:   op2.py:590                   -------- reading op2 with read_mode=1 (array sizing) --------
DEBUG:   op2_reader.py:299            date = (12, 10, 24)
DEBUG:   op2_reader.py:382            mode='nx' version='2020.1'
DEBUG:   op2_scalar.py:2172             table_name=b'PVT0'     (PARAM cards)
DEBUG:   op2_scalar.py:2172             table_name=b'CASECC'   (case control)
DEBUG:   op2_scalar.py:2172             table_name=b'EQEXINS'  (internal/external ids (superelement))
DEBUG:   op2_reader.py:653            eqexin idata=(101, 339401, 0, 0, 0, 0, 0)
DEBUG:   op2_scalar.py:2172             table_name=b'OGPWG'    (grid point weight)
DEBUG:   op2_scalar.py:2172             table_name=b'OQG1'     (spc/mpc forces)
DEBUG:   op2_scalar.py:2172             table_name=b'OUGV1'    (g-set U in CD frame)
DEBUG:   op2_scalar.py:2172             table_name=b'OEF1X'    (element force at intermediate stations)
DEBUG:   op2_scalar.py:2172             table_name=b'OES1X1'   (nonlinear stress)
failed reading b'OES1X1' isubtable=-1542
Traceback (most recent call last):
  File "c:\Users\BrianRussell\Desktop\op2_tester.py", line 21, in <module>
    op2 = read_op2(op2fileName, build_dataframe=False, exclude_results=excludeResults, debug=True,skip_undefined_matrices=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2.py", line 1424, in read_op2
    model.read_op2(op2_filename=op2_filename, build_dataframe=build_dataframe,
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2.py", line 600, in read_op2
    table_names = OP2_Scalar.read_op2(self, op2_filename=op2_filename,
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_scalar.py", line 1998, in read_op2
    self._read_tables(table_name, table_names)
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_scalar.py", line 2194, in _read_tables
    op2_reader.read_results_table()
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3510, in read_results_table
    self.read_results_table4()
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3535, in read_results_table4
    self._read_subtables()
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3751, in _read_subtables
    self._read_subtable_3_4(table3_parser, table4_parser, passer)
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3852, in _read_subtable_3_4
    record_len = self._get_record_length()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3438, in _get_record_length
    markers1 = self.get_nmarkers(1, rewind=True)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 2495, in get_nmarkers
    return self.get_nmarkers4(n, rewind=rewind, macro_rewind=macro_rewind)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 2519, in get_nmarkers4
    data = self.read_block4()
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\BrianRussell\AppData\Local\Programs\Python\Python312\Lib\site-packages\pyNastran\op2\op2_interface\op2_reader.py", line 3032, in read_block4
    ndata, = op2.struct_i.unpack(data)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
struct.error: unpack requires a buffer of 4 bytes


Any idea what is going on here?  I am after stress results, but they should all be linear results in this .op2.  Thanks in advance.

~Brian Russell
Screenshot 2024-12-11 144631.png
Reply all
Reply to author
Forward
0 new messages