My guess is you're not using the element type you think you are. The data stored on the CQUAD4 is different in the linear and nonlinear cases, so you can check the type to find out the class and then look at the docs. What you want is probably in op2.nonlinearPlateStress and not op2.plateStress.
Also, your max_major formula is only valid for a CQUAD4/CTRIA3 with a PSHELL with a Z0 and Z1. A PCOMP with multiple layers would return the wrong value.
pyNastran doesn't create any generate any data that wasn't in the OP2, so if you can generate the table in the F06, there will be a corresponding one in the OP2. Any value that doesn't exist in a table is not computed. Some values that are in the F06/OP2 are not stored, but have functions to compute their values.
Steve