https://mooseframework.inl.gov
Loading...
Searching...
No Matches
AbaqusUExternalDB.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
16
21{
22public:
24
26
27 virtual void initialize() override {}
28 virtual void initialSetup() override;
30 virtual void execute() override;
31 virtual void threadJoin(const UserObject &) override {}
32 virtual void finalize() override {}
33
34protected:
36 typedef void (*uexternaldb_t)(
37 int * LOP, int * LRESTART, Real TIME[], Real * DTIME, int * KSTEP, int * KINC);
38
39 // call the plugin with the supplied LOP code
40 void callPlugin(int lop);
41
42 // The plugin file name
43 FileName _plugin;
44
45 // The plugin library wrapper
47
48 // Function pointer to the dynamically loaded function
50
51 // Abaqus simulation step number to pass in
53
55
58};
Coupling user object to use Abaqus UEXTERNALDB subroutines in MOOSE.
virtual void finalize() override
virtual void initialSetup() override
void callPlugin(int lop)
virtual void threadJoin(const UserObject &) override
static InputParameters validParams()
virtual void execute() override
the UEXTERNALDB subroutine gets called here
void(* uexternaldb_t)(int *LOP, int *LRESTART, Real TIME[], Real *DTIME, int *KSTEP, int *KINC)
function type for the external UEXTERNALDB function
const AnalysisStepUserObject * _step_user_object
User object that determines the step number.
DynamicLibraryLoader _library
const ExecFlagType & _current_execute_on_flag
uexternaldb_t _uexternaldb
virtual void initialize() override
Interface class for step user object.
User object that provides analysis steps given user input.
Wrapper class to facilitate loading and lifetime management of dynamic libraries and obtaining pointe...
const InputParameters & parameters() const