In this blog, I want to discuss units in Abaqus. On one hand, I can be short on it: we can choose what we like, as long as it is consistent. On the other hand, this is a common source of mistakes. Therefore I want to go into a bit more detail.
Consistent units
As I said, Abaqus assumes you use consistent units. It does not matter which units you use, as long as they match with each other. (The only exception to this is below.) This is a nice approach allowing a lot of flexibility. It is also prone to errors, especially because you do not need to fill in which units were chosen somewhere. Most people use the same system of units all the time, and kind of assume other people are using the same units. At least that is what I do…
This can lead to the interesting situation where you copy a material from a colleague, and get unexpected results. I’ve actually done this, and it took quite some time to realize he was using SI units, while I was using SI units with mm.
Bottom line: be aware that this kind of thing may happen, check whether the values you have make sense in the system of units you are using and perhaps mention the units you are using in the model description.
Angles and rotations
The only built-in units Abaqus has, are for angles and rotation. Abaqus uses radians for rotational degrees of freedom, while all other angles measures are expressed in degrees.
Specifying physical constants
An interesting consequence of not using an inherent set of units is that many physical constants cannot be predefined in the software because they depend on the set of units used. For example, the gravitational constant of 9.81 m/s2 becomes 9810 mm/s2 when using SI with mm or 386 inch/s2 when using US units. Because Abaqus does not know which unit system we are using, we must tell Abaqus the value of the physical constants that are used in the analysis.
For gravitational loading, this is done by specifying the acceleration when applying a gravitational load. When surface emissivity and radiation conditions in heat transfer analyses are specified, the absolute zero temperature and the Stefan-Boltzmann constant must be given. If the universal gas constant is needed, it must also be specified. They can be specified as model attributes, accessible via model --> edit attributes.
Example
In the Abaqus manual, we can find the following table:
Each column corresponds to a set of consistent units. So, for example, if we are using mm, N and s, we should also use mJ.
It is always nice to know what order of magnitude is expected for different properties. In the table below, some examples of properties and physical constants are provided.
|
Commonly used unit
|
SI value
|
SI-mm value
|
Multiplication factor from commonly used to SI-mm
|
Stiffness of steel
|
210 GPa
|
210∙109 Pa
|
210000 MPa
|
1000
|
Density of steel
|
7850 kg/m3
|
7.85∙10-9 tonne/mm3
|
10-12
|
Gravitational constant
|
9.81 m/s2
|
9810 mm/s2
|
1000
|
pressure
|
1 bar
|
105 Pa
|
0.1 MPa
|
10-1
|
Absolute zero temperature
|
-273.15 ̊C
|
0 K
|
̊C and K both acceptable
|
-
|
Stefan-Boltzmann constant
|
5.67∙10-8 W∙m-2∙K-4
|
5.67∙10-11 mW∙mm-2∙K-4
|
0.001
|
Universal gas constant
|
8.31 J∙K-1∙mol-1
|
8.31∙103 mJ∙K-1∙mol-1
|
1000
|
Here in the Netherlands, usually ̊C or K are used for temperature. The only difference between these units is an offset; a difference in temperature of 1 ̊C is equal to a temperature different of 1 K. Because of this, ̊C and K can be interchanged in derived units: mW∙mm-2∙K-4 equals mW∙mm-2∙ ̊C -4.
Changing units in an Abaqus model
In some cases, you may want to change the system of units used. This can be done for different reasons such as personal preference, to be consistent with units used by colleagues or because the original set of units leads to values that are so small or so large that numerical issues arise.
Unfortunately, there is no button to click in Abaqus to do a conversion: you will need to do this yourself. This means going through all values specified, and determining what they should be in the new system of units. If you need to do this often, it may be worth while to write a script for it.
If the unit of length is changed, this means that the part must be scaled. If it is drawn in Abaqus, the dimensions can be modified to take into account the unit change. If the part is imported, this is not possible. The best option is then to copy the part, while scaling it.
Because this leads to a new part, any loads and boundary conditions defined on the original part need to be redefined. Such a copy-with-scale should thus be performed before setting up the model. Furthermore, sets are not retained when copying a part this way. A workaround is to create a mesh part (in mesh module: mesh --> create mesh part) and copying this. Sets are retained then.
Final remarks
Though using the correct units in general is not difficult, it is definitely something to pay attention to. It’s a bit similar to simulating half of a symmetric model: it’s not that difficult to multiply forces by two to get the total force, but it’s easily forgotten.