''' Created on 10. 11. 2015 @author: Kapsak ''' from CDEM.basic import * from CDEM.utils import * import numpy as np import tabulate as tbl from CDEM.file_handler import get_outfile dom = get_2D_quadrangle_domain(ni=3, nj=10, lx=100., ly=30., E=10000., nu=0.2, density=1., alfaC=50.*(25.**0.5), thickness=1., stiffdef='isoparametric', spring_stiffness_factor=100., domtype='CDEMStatic', load=[((45., 55.), (25., 35.), [0., -50.])], supports=[((-5., 5.), (-5., 5.), [1, 1]), ((95., 105.), (-5., 5.), [0, 1])]) dom.solve(timelog=get_outfile(['Dropbox', 'CDEM', '3point_bending_timing'], '3point_bending_Static_timing.txt')) dom.plot()
@author: Kapsak ''' from CDEM.basic import * from CDEM.utils import * import numpy as np import tabulate as tbl from CDEM.file_handler import get_outfile dom = get_2D_quadrangle_domain(ni=3, nj=20, lx=2., ly=0.2, E=25000000000., nu=0.2, density=2500., alfaC=0.0, thickness=0.2, stiffdef='isoparametric', spring_stiffness_factor=10., domtype='CDEMDR', load=[((0.99, 1.01), (0.19, 0.21), [0., -200000.])], supports=[((-0.01, 0.01), (-0.01, 0.01), [1, 1]), ((1.99, 2.01), (-0.01, 0.01), [0, 1])]) headers = ['d_t', 'n_iter', 'density', 'w_end', 's_end', 'C_min', 'C_max', 'alfaC', 'stiffness_factor'] table = {key:[] for key in headers} table['n_iter'] = [320000,640000,1280000] for n_iter in table['n_iter']: for nd in dom.nodes: nd.v_velo = np.zeros(2) nd.v_disp = np.zeros(2) dom.solve(t_load=0.008,t_max=0.008,tol=1e-16, maxiter=n_iter, node_to_plot=119, savefile=get_outfile(['Dropbox', 'CDEM', '3point_bending_real','totaltime_008'], 'graph_niter=%.1f.png' % n_iter), savetextfile=get_outfile(['Dropbox', 'CDEM', '3point_bending_real','totaltime_008'], 'textgraph_niter=%.1f.txt' % (n_iter)),show=False, output_freq=1000) dom.plot(magnitude=100., savefile=get_outfile(['Dropbox', 'CDEM', '3point_bending_real','totaltime_008'], 'deformed_niter=%.1f.png' % (n_iter)), show=False)
from CDEM.file_handler import get_outfile from CDEM import * # dom = get_2D_quadrangle_domain(ni=3, nj=10, lx=100., ly=30., E=10000., nu=0.2, density=1., # thickness=1., stiffdef='isoparametric', # spring_stiffness_factor=10., domtype='CDEMStatic', # load=[((49, 51.), (29., 31.), [0., -50.])], # supports=[((-1., 1.), (-1., 1.), [1, 1]), ((99., 101.), (-1., 1.), [0, 1])]) dom = get_2D_quadrangle_domain(ni=3, nj=20, lx=2., ly=0.2, E=25000000000., nu=0.2, density=2500., alfaC=0.0, thickness=0.2, stiffdef='isoparametric', spring_stiffness_factor=10., domtype='CDEMDR', load=[((0.99, 1.01), (0.19, 0.21), [0., -200000.])], supports=[((-0.01, 0.01), (-0.01, 0.01), [1, 1]), ((1.99, 2.01), (-0.01, 0.01), [0, 1])]) f = open(get_outfile(['Dropbox', 'CDEM', 'OOFEM_input'], '3point_bending_real.in'), 'w') for el in dom.elements: el.calc_normal_vectors() springs = [] nvects = [] for i, node in enumerate(dom.nodes): for nb, nv in zip(node.neighbors, node.n_vects): if nb != 0: couple = (min(i + 1, nb), max(i + 1, nb)) if couple not in springs: springs.append(couple) nvects.append(nv) f.write('ndofman %d nelem %d\n' % (len(dom.nodes), len(dom.elements) + 2 * len(springs))) for i, node in enumerate(dom.nodes):