Skip to main content

Defining Ansys Superelement SUB File Manually

Photo by James Owen on Unsplash

A surprisingly popular blog-post written here is Exporting Stiffness Matrix from Ansys. A sensible follow up question is what can one do with the exported stiffness matrix? In a recent Xansys Forum post, a question was raised on how we can edit the stiffness matrix of a superelement and use it for our model. 

An approach presented below is to first create a superelement that has the same number of DOF and nodal location that will serve as a template. An APDL script can then be written to edit the stiffness matrix entries as desired before exporting to a new superelement *.SUB file for use in future models. The self-contained script below demonstrates this. 

et,1, 185
mp, ex, 1, 200e3
mp, prxy, 1, 0.33

w = 0.1 ! single element (note nodal locations)
n, 1, w, -w, -w
n, 2, w, w, -w
n, 3, -w, w, -w
n, 4, -w, -w, -w
n, 5, w, -w, w
n, 6, w, w, w
n, 7, -w, w, w
n, 8, -w, -w, w
e, 1, 2, 3, 4, 5, 6, 7, 8

antype, substr     ! analysis type: substructure
seopt, myse,1   ! saves stiffness matrix
m, all, all

! Imports sub info into APDL-math form
*DMAT, myse, d, import, sub, myse.sub, stiff

! Export to apdl array for editing
*EXPORT, myse, apdl, apdlmat

! Make edits as desired
apdlmat(2,2) = 28 ! example edit to be checked later

! Put back to APDL-math form
*DMAT, myse, ,import, apdl, apdlmat

! exports desired sub file
*EXPORT, myse, sub, newse.sub, stiff, , done

!! To verify it works as expected
/clear ! start from scratch 

et, 1, 50 
se, newse 

eqslv, sparse
wrfull, 1

*DMAT, MatK_check, D, import, full, file.full, stiff
*EXPORT, MatK_check, apdl, apdlmat_check
shouldbe28 = apdlmat_check(2,2)
*stat, shouldbe28

Other Resources
Matrix Transfer between MATLAB and Ansys link
Export Stiffness Matrix from Ansys link
APDL Math Example link
Ansys's Website APDL Math Example link