Search
Close this search box.
Notifications
Clear all

User element and constitutive tensor

14 Posts
3 Users
0 Reactions
1,083 Views
Posts: 42
Topic starter
(@aas0092)
Eminent Member
Joined: 16 years ago

Hi 😀

I created a 3D 8-noded solid hexahedral user element (UEL) in Abaqus.

In order to do this I needed the constitutive tensor(6x6) to be defined in the user element. I therefore hard coded the Const Tensor into the user element. Normally the constitutive tensor is define in a user material.

I used this constitutive tensor to create the stiffness matrix, AMATRX, as in:

K = B(transposed) * C * B * weight *det_jacobian

for illustration. of stiffness matrix formation.

[B]Are there any problems which may arise?[/B]

[B]Is there some other way to use the actual constitutive tensor, rather than hard-coding?[/B]

I should add that I ran the user element, successfully. (I think):cool:

The log file gave syntax errors, which I fixed, so I assumed that it was using the user element.

I am not sure that it [U]is[/U] being used, as I compared the output with a single element test, and a standard element, and it gave the exact same result.

I think I may have a problem with the input file. :frown:

[B]How do I make sure that the user element is definitely being used?[/B]

[B]Also, how do I use the user element, and user material together?[/B]

13 Replies
Posts: 3998
(@jorgen)
Member
Joined: 5 years ago

I think your approach seems right. My guess is that you need to hard-code the constitutive response in the UEL as well as in the UMAT.

You can add print statements in your UEL to make sure it runs as intended.

I suspect that you should be able to use both a UEL and UMAT at the same time by adding them to the same source file.

- Jorgen

13 Replies
Posts: 42
Topic starter
(@aas0092)
Eminent Member
Joined: 16 years ago

Hi 🙂

Thanks for the response. 😎

I have tried printing to a file from the subroutine, but this has been unsuccessful.

[B]How exactly is this achieved?[/B]

[B]

When you say source file, what exactly are you referring to?[/B] Is it the file I created my user element in. Ive never seen a user element and user material in the same file before. :confused:

[B]How is this achieved?[/B]

Regards

Davinci

Reply
Posts: 80
(@FrankMonkey)
Trusted Member
Joined: 15 years ago

Hello,

writing from subroutines can be achieved in this manner:

open(15,file=path\filename.ext,position=append)

write(15,*) TIME(2), RPL

close(15)

Refer to:

Testing and debugging

When developing user subroutines, test them thoroughly on smaller examples in which the user subroutine is the only complicated aspect of the model before attempting to use them in production analysis work.

If needed, debug output can be written to the ABAQUS/Standard message (.msg) file using FORTRAN unit 7 or to the ABAQUS/Standard data (.dat) file or the ABAQUS/Explicit status (.sta) file using FORTRAN unit 6, these units should not be opened by your routines since they are already opened by ABAQUS.

FORTRAN units 15 through 1 or units greater than 100 can be used to read or write other userspecified information. The use of other FORTRAN units may interfere with ABAQUS file operations, see FORTRAN unit numbers used by ABAQUS, Section 3.6.1. You must open these FORTRAN units, and because of the use of scratch directories, the full pathname for the file must be used in the OPEN statement

Frank

Reply
Posts: 42
Topic starter
(@aas0092)
Eminent Member
Joined: 16 years ago

Hi Jorgen

When you say source file, what exactly are you referring to? Is it the file I created my user element in. Ive never seen a user element and user material in the same file before.
How is this achieved?

Regards
Davinci

Reply
Posts: 42
Topic starter
(@aas0092)
Eminent Member
Joined: 16 years ago

Hi Jorgen

When you say source file, what exactly are you referring to? Is it the file I created my user element in. Ive never seen a user element and user material in the same file before.

How is this achieved?

Regards

Davinci

Reply
Posts: 3998
(@jorgen)
Member
Joined: 5 years ago

For everyones reference: you can add multiple user-subroutines into one source file.

-Jorgen

Reply
Page 1 / 2
Share: