JWock82/Pynite

Model Fails Statics Checks

Aberta

#102 aberto em 27 de set. de 2021

 (27 comentários) (1 reação) (2 responsáveis)Python (148 forks)github user discovery
help wantedprogram limitation

Métricas do repositório

Stars
 (733 estrelas)
Métricas de merge de PR
 (Mesclagem média 18d 16h) (1 fundiu PR em 30d)

Description

Sorry to come again with problems and not solutions, but i'm having some trouble with a proof-of-concept lateral stability model that i have been trying to analyse with PyNite. It is a model of an RC building core and shear wall, with some rigid members connecting the two to represent the rigid floor diaphragm.

The model runs fine, and the stress plots on the quad elements look good, but the model fails statics checks. The global reactions are larger than the sum of the applied forces. The 'check_statics' function built in to the 'analyze' method confirms this.

Any thoughts on what could be causing this?

The code to generate the model is complex so i've pickled the model and attached it in a zip file below:

stability_test.zip

I have subclassed PyNite.FEModel3D so you'll need to use the below code to read the model.

import pickle

infile = ...

class customUnpickler(pickle.Unpickler):
    def find_class(self, module, name):
        if module == "Analysis.AnalysisBase":
            module = "PyNite.FEModel3D"
            name = "FEModel3D"

        return super().find_class(module, name)
    
with open(infile,mode="rb") as f: model=customUnpickler(f).load()


Also, i've noticed that Visualization._PrepContour fails when there are nodes in the model not connected to Quad or Plate elements. node.contour = sum(node.contour)/len(node.contour) results in a divide by zero error.

Guia do colaborador