pyNastran
pyNastran copied to clipboard
op2 reader fails for v1.4 on EPTS and OES1X
Hi,
I'm using pyNastran 1.4.0
and I'm trying to read two large .op2 files (7GB and 60GB files) generated from OptiStruct.
I'm using read_op2_geom(input_file)
, where input_file
is the .op2 file and read_op2_geom
is imported from pyNastran.op2.op2_geom
.
When I try to read the first file I get: failed reading b'EPTS' isubtable=-4
When I try to read the second I get: failed reading b'OES1X' isubtable=-19
However, reading much simpler models works just fine. Any help on how to solve this problem would be very much appreciated, thanks.
I’d have to see a failed example to understand the issue. Optistruct is supported simply by being compatible. Very little coding was done to support it, so they might do some funny things. I also have no documentation for it.
Beyond that, I know people were using it to read 60 GB MSC op2 files 5+ years ago, so I know it works.
The EPTS table stores properties (PSHELL, PBAR, etc.) so maybe there’s a size issue, but it’s unrelated to the file being 7 GB.
I think OES1X Is related to line elements (e.g., CBAR, CBEAM), but outside of that, no idea what’s wrong.
On Fri, Mar 4, 2022 at 7:35 AM mathdyn @.***> wrote:
Hi,
I'm using pyNastran 1.4.0 and I'm trying to read two large .op2 files (7GB and 60GB files) generated from OptiStruct.
I'm using read_op2_geom(input_file), where input_file is the .op2 file and read_op2_geom is imported from pyNastran.op2.op2_geom.
When I try to read the first file I get: failed reading b'EPTS' isubtable=-4 When I try to read the second I get: failed reading b'OES1X' isubtable=-19
However, reading much simpler models works just fine. Any help on how to solve this problem would be very much appreciated, thanks.
— Reply to this email directly, view it on GitHub https://github.com/SteveDoyle2/pyNastran/issues/688, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAICUWPBVOALRV7MHYMM323U6IUTJANCNFSM5P53NPXA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
Closing due to lack of activity.
Hello, I have an example of a random analysis raising this error. This example has bars but the error raises even when no results for bars are requested.
Hmm...weird...
There's something you're doing that's causing MSC to double write the stress table. It's putting one in OES1 and one in OES1X. If you dump the data to an F06, it's pretty easy to diff.
I added a super-dev-level parameter in order to separate the tables.
from pyNastran.op2.op2 import OP2
model = OP2()
model.use_table_name_in_code = True
op2_filename = 'random_x_mini.op2'
model.read_op2(op2_filename)
print(model.get_op2_stats())
params:
BAILOUT = 0
DDRMM = -1
EPZERO = 9.99999993922529e-09
GRDPNT = 0
HFREQ = 2000.0
K6ROT = 1.0
LFREQ = 0.0
MAXRATIO = 10000000.0
MODACC = 0
POST = -2
PRTMAXIM = 'YES'
...
op2_results.gpdt: GPDT(nid_cp_cd_ps, xyz); nnodes=248
op2_results.bgpdt: BGPDT(cd, xyz); nnodes=248
op2_results.stress.chexa_stress[(1, 5, 1, 0, 0, '', '', 'OES1')]
type=ComplexSolidStressArray ntimes=674 nelements=1 nnodes=9; table_name='OES1'
eType, cid
data: [ntimes, nnodes, 6] where 6=[oxx, oyy, ozz, txy, tyz, txz]
element_node.shape = (9, 2)
element_cid.shape = (1, 2)
data.shape = (674, 9, 6)
CHEXA
sort1
freqs = [ 15.17999935 16.01000023 16.03000069 16.04999733 21.38999748
...
1084.9699707 1111.98999023 1160.2598877 1295.0300293 ]
op2_results.stress.chexa_stress[(1, 5, 1, 0, 0, '', '', 'OES1X')]
type=ComplexSolidStressArray ntimes=674 nelements=1 nnodes=9; table_name='OES1X'
eType, cid
data: [ntimes, nnodes, 6] where 6=[oxx, oyy, ozz, txy, tyz, txz]
element_node.shape = (9, 2)
element_cid.shape = (1, 2)
data.shape = (674, 9, 6)
CHEXA
sort1
freqs = [ 15.17999935 16.01000023 16.03000069 16.04999733 21.38999748
...
1084.9699707 1111.98999023 1160.2598877 1295.0300293 ]
eigenvalues[- RANDOM X - CORES]
type=RealEigenvalues neigenvalues=8
title, extraction_order, eigenvalues, radians, cycles, generalized_mass, generalized_stiffness
The code is now even worse :)
(analysis_codei, sort_methodi, counti, isuperelmemnt_adaptivity_index, pval_step, table_name)
Mm, I would expect one of the tables to be the sine sweep and the other one ,the psdf. Just a guess.
El mié., 2 nov. 2022 3:28, Steven Doyle @.***> escribió:
Reopened #688 https://github.com/SteveDoyle2/pyNastran/issues/688.
— Reply to this email directly, view it on GitHub https://github.com/SteveDoyle2/pyNastran/issues/688#event-7718750586, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADK2WF7HJMIXPC3WJBFZPQDWGHGTPANCNFSM5P53NPXA . You are receiving this because you commented.Message ID: @.***>
Maybe it is and I’m just not seeing it cause there’s so much data? I expect a real result for the PSD…
Can you make a run with just 2 frequencies? You can request the results for 1 element as well.
On Tue, Nov 1, 2022 at 10:19 PM Alejandro Stewart @.***> wrote:
Mm, I would expect one of the tables to be the sine sweep and the other one ,the psdf. Just a guess.
El mié., 2 nov. 2022 3:28, Steven Doyle @.***> escribió:
Reopened #688 https://github.com/SteveDoyle2/pyNastran/issues/688.
— Reply to this email directly, view it on GitHub https://github.com/SteveDoyle2/pyNastran/issues/688#event-7718750586, or unsubscribe < https://github.com/notifications/unsubscribe-auth/ADK2WF7HJMIXPC3WJBFZPQDWGHGTPANCNFSM5P53NPXA
. You are receiving this because you commented.Message ID: @.***>
— Reply to this email directly, view it on GitHub https://github.com/SteveDoyle2/pyNastran/issues/688#issuecomment-1299587282, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAICUWJKP6TZEBRGOJ5W6QTWGH2VZANCNFSM5P53NPXA . You are receiving this because you modified the open/close state.Message ID: @.***>