Replies: 6 comments
-
Hi, please try an older version of the library, see #20 (comment) |
Beta Was this translation helpful? Give feedback.
-
Also, take a look on the older version of the readme how to use Tensor with .f files. https://github.com/adtzlr/ttb/tree/15372e07ad2031a83b8e3a4fe1c99bf538c4d20b |
Beta Was this translation helpful? Give feedback.
-
Thank you for your quick response. I see I have to use double precision. Sorry for making so questions but now I have this error or similar multiple times: Error: Invalid character in name at (1) It seems a fortran-version error. I think I have f90, should I change my fortran version or change the files to my current version? GNU Fortran (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, I just wrote include 'ttb/ttb_library.f' because if I add a #, there is a illegal preprocesor directive and use tensor is not read properly. Thanks a lot for your help, Iulen, |
Beta Was this translation helpful? Give feedback.
-
Sorry I have no idea what's wrong now... |
Beta Was this translation helpful? Give feedback.
-
The ttb works for me also under Ubuntu (Ubuntu 18.04.6 LTS) in LS-Dyna. Both the current release v1.0.2 and the older version (https://github.com/adtzlr/ttb/archive/15372e07ad2031a83b8e3a4fe1c99bf538c4d20b.zip) work fine. However, Linux seems to dislike the precompilation flags, so I removed each block of lines "#ifndef NOR4 ... #endif" inside LS-Dyna has a somewhat different Fortran file structure (https://github.com/jfriedlein/usrmat_LS-Dyna_Fortran) than Abaqus. In the file dyn21umats.f (note the lower case .f extension): include 'ttb/ttb_library.F'
...
subroutine umat43(cm,eps,sig,epsp,hsv,dt1,capa,etype,tt,
1 temper,failel,crv,nnpcrv,cma,qmat,elsiz,idele,reject)
c
use Tensor
c
include 'nlqparm'
include 'bk06.inc'
include 'iounits.inc'
dimension cm(*),eps(*),sig(*),hsv(*),crv(lq1,2,*),cma(*),qmat(3,3)
integer nnpcrv(*)
character*5 etype
logical failel,reject
integer*8 idele
c Declarations
real lame_lambda, shearMod_mu, bulkMod_kappa
type(Tensor2) :: Eye, d_eps, stress, stress_n
c Material parameters, extracted from the material parameter array 'cm'
lame_lambda = cm(1)
shearMod_mu = cm(2)
bulkMod_kappa = lame_lambda + 2./3. * shearMod_mu
c Second order identity tensor
Eye = identity2(Eye)
d_eps = strain(eps,3,3,6)
stress_n = symstore_2sa(sig)
stress = stress_n + lame_lambda * tr(d_eps) * Eye
& + 2. * shearMod_mu * d_eps
c Transform the stress tensor back into a vector:
sig(1:6) = asarray(voigt(stress),6)
c
return
end
... Then I call "make" in this directory with gfortran --version |
Beta Was this translation helpful? Give feedback.
-
Thanks @jfriedlein for providing further informations for Linux. @ICG14 if you have success please post your solution. |
Beta Was this translation helpful? Give feedback.
-
Hi,
I know that the library has not been tested in ubuntu but I would like to ask if anyone knows how to read .F extensions in Abaqus in Ubuntu.
The library is not working because the pre-processor is not called.
abaqus14 job=rectangle_fibers user=hgo_crimpingCopy.F
Abaqus Error: The following file(s) could not be located: hgo_crimpingCopy.F.f, hgo_crimpingCopy.F.for, hgo_crimpingCopy.F.c, hgo_crimpingCopy.F.cpp, hgo_crimpingCopy.F.C, hgo_crimpingCopy.F.c++, hgo_crimpingCopy.F.o
Abaqus/Analysis exited with error(s).
If I rename the file with a .f, there is a pre-processor violation and *Use tensor does not work.
Thanks in advance,
Iulen,
Beta Was this translation helpful? Give feedback.
All reactions