Пример #1
0
    def test_abaqus_1(self):
        """simple test"""
        lines = make_model()
        log = get_logger(level='warning', encoding='utf-8')
        read_abaqus(lines, log=log, debug=False)

        abaqus_filename = os.path.join(PWD, 'abaqus.inp')
        with open(abaqus_filename, 'w') as abaqus_file:
            abaqus_file.writelines('\n'.join(lines))
Пример #2
0
    def test_abaqus_2(self):
        """two hex blocks with duplicate node ids"""
        abaqus_filename = os.path.join(MODEL_PATH, 'single_block.inp')
        log = get_logger(level='error', encoding='utf-8')

        model = read_abaqus(abaqus_filename, log=log, debug=False)
        model.write('spike.inp')
        os.remove('spike.inp')
Пример #3
0
def run_abaqus(abaqus_filename, debug=False):
    """
    Runs a single abaqus deck

    Parameters
    ----------
    abaqus_filename : str
       the abaqus filename to read

    """
    fem1 = read_abaqus(abaqus_filename, debug=debug, log=None)
Пример #4
0
    def test_abaqus_1(self):
        """simple test"""
        lines = make_model()
        log = get_logger(level='warning', encoding='utf-8')
        model = read_abaqus(lines, log=log, debug=False)
        model.write('spike.inp')
        os.remove('spike.inp')

        abaqus_filename = os.path.join(MODEL_PATH, 'abaqus_out.inp')
        with open(abaqus_filename, 'w') as abaqus_file:
            abaqus_file.writelines('\n'.join(lines))
Пример #5
0
    def test_abaqus_1(self):
        """simple test"""
        lines = [
            '*part, name=dummy',
            '*node',
            '1,0.,0.,0.',
            '2,1.,0.,0.',
            '3,1.,1.,0.',
            '4,0.,1.,0.',

            '*element, type=cpe3',
            '1,1,2,3',
            '*element, type=cpe4',
            '2,1,2,3,4',
            '*end part',
            #'*material, name=steel',
            #'42',
        ]
        abaqus_filename = 'test.inp'
        with open(abaqus_filename, 'w') as abaqus_file:
            abaqus_file.write('\n'.join(lines))
        read_abaqus(abaqus_filename, debug=False)
        os.remove(abaqus_filename)
Пример #6
0
def run_abaqus(abaqus_filename, write_abaqus=True, debug=False):
    """
    Runs a single abaqus deck

    Parameters
    ----------
    abaqus_filename : str
       the abaqus filename to read

    """
    fem1 = read_abaqus(abaqus_filename, debug=debug, log=None)
    if write_abaqus:
        base, ext = os.path.splitext(abaqus_filename)
        abqaqus_filename_out = '%s.test_abqaus%s' % (base, ext)
        fem1.write(abqaqus_filename_out)
Пример #7
0
def abaqus_to_nastran_filename(abaqus_inp_filename: str,
                               nastran_filename_out: str):
    model = read_abaqus(abaqus_inp_filename, log=None, debug=True)
    nnodes, nids, nodes, nelements = get_nodes_nnodes_nelements(
        model, stop_for_no_elements=True)
    assert nnodes > 0, nnodes
    assert nelements > 0, nelements

    nastran_model = BDF(debug=True, log=None, mode='msc')
    for nid, xyz in zip(nids, nodes):
        nastran_model.add_grid(nid, xyz)
    _create_nastran_nodes_elements(model, nastran_model)
    #for step in model.steps:
    #print(step)

    _create_nastran_loads(model, nastran_model)
    nastran_model.write_bdf(nastran_filename_out)
    x = 1
Пример #8
0
 def test_abaqus_1(self):
     """simple test"""
     lines = make_model()
     log = get_logger(level='warning', encoding='utf-8')
     read_abaqus(lines, log=log, debug=False)