Notifications
Clear all

How to solve the problem encountered when debugging Abaqus vumat subroutine in visual studio?


liniugang@yeah.net
Posts: 1
Topic starter
(@liniugangyeah-net)
New Member
Joined: 7 months ago
Dear friends
when I debug a vumat subroutine in visual studio, the debugging process will end after only a strainInc, though there are many strainInc in Abaqus. Do someone meet the similar problem? If so, what will you do to solve it?
3 Replies
chilissauerkraut
Posts: 1
(@chilissauerkraut)
New Member
Joined: 3 months ago

1. Get the Abaqus environment ready.

a. Open abaqus v6.env using a text editor in C:Abaqus6.9-1site

b. Scroll down

c. Include the '/Od' and '/Zi' parameters to "compile fortran" to have the Intel Fortran compiler add debug symbolic information to the.obj file. ['ifort', '/c', '/Gm', '/recursive', '/nologo', '/heap-arrays:1', '/include: percent I', '/Od', '/Zi'] 'ifort', '/c', '/Gm', '/recursive', '/nologo'.

d. Add /DEBUG to "link sl" to allow the Visual C++.NET linker to link the files with the symbolic information in the.obj file. "e.g., LINK /DEBUG /nologo /INCREMENTAL:NO /subsystem:console /machine:X86 e.g., LINK /DEBUG /nologo /INCREMENTAL:NO /subsystem:console /machine:X86 To allow the Visual C++.NET linker to debug the files, add /DEBUG to "link exe"

e. Link exe='cmd /c " "/DEBUG /nologo /INCREMENTAL:NO /subsystem:console INK /DEBUG /nologo /INCREMENTAL:NO /subsystem:console.

2. Create your job (*.inp) and subroutine (*.for) files.

3. In Microsoft Visual Studio, open your FORTRAN code.

4. Right after the "DIMENSION" declaration, add a READ(*,*) VARIABLE to your subroutine source code file, where "VARIABLE" is the variable's arbitrary name. Also, set a breakpoint at a function/variable of interest, such as READ(*,*), VARIABLE, or use Debug -> QuickWatch to observe a variable of interest. By hitting F9, you can add/remove breakpoints.

Maybe it useful with you!

Reply
t283a998
Posts: 2
(@t283a998)
New Member
Joined: 3 years ago

There could be a lot of option.

I usually run the simulation for one element with and without vumat. Compare the results for to see what the potential issue could be?  

Next, i do some hand calculation for one element and put 'write' statement in vumat code to check the values from the log file. hope this helps 

Reply
guadalupecortez
Posts: 1
(@guadalupecortez)
New Member
Joined: 2 months ago

I usually run the simulation for one element with and without vumat. Compare the results for to see what the potential issue could be and then do some hand calculation.

Reply
Share: