import postprocesor as pos import assemutil as ass import shutil as shu from datetime import datetime import matplotlib.pyplot as plt start_time = datetime.now() name = raw_input('Enter the job name: ') # MODEL ASSEMBLY # # Reads the model nodes, mats, elements, loads = pre.readin() # Activate to generate echo files #pre.echomod(nodes, mats, elements, loads) # Retrieves problem parameters ne, nn, nm, nl, COORD = pre.proini(nodes, mats, elements, loads) # Counts equations and creates BCs array IBC neq, IBC = ass.eqcounter(nn, nodes) # Computes assembly operator DME, IELCON = ass.DME(IBC, ne, elements) # Assembles Global Stiffness Matrix KG KG = ass.matassem(IBC, mats, elements, nn, ne, neq, COORD, DME, IELCON) # Assembles Global Rigth Hand Side Vector RHSG RHSG = ass.loadasem(loads, IBC, neq, nl) # SYSTEM SOLUTION # # Solves the system UG = np.linalg.solve(KG, RHSG) print(np.allclose(np.dot(KG, UG), RHSG)) end_time = datetime.now()
name = easygui.enterbox("Enter the job name") echo = easygui.buttonbox("Do you want to echo files?", choices=["Yes", "No"]) start_time = datetime.now() #%% # MODEL ASSEMBLY # # Reads the model nodes, mats, elements, loads = pre.readin(folder=folder) if echo == "Yes": pre.echomod(nodes, mats, elements, loads, folder=folder) # Retrieves problem parameters ne, nn, nm, nl, COORD = pre.proini(nodes, mats, elements, loads) # Counts equations and creates BCs array IBC neq, IBC = ass.eqcounter(nn, nodes) # Computes assembly operator DME, IELCON = ass.DME(IBC, ne, elements) # Assembles Global Stiffness Matrix KG KG = ass.matassem(IBC, mats, elements, nn, ne, neq, COORD, DME, IELCON) # Assembles Global Rigth Hand Side Vector RHSG RHSG = ass.loadasem(loads, IBC, neq, nl) #%% # SYSTEM SOLUTION # # Solves the system UG = np.linalg.solve(KG, RHSG) if not(np.allclose(np.dot(KG, UG), RHSG)):