View difference between Paste ID: hG8iLvTs and gyJHKTeJ
SHOW: | | - or go back to the newest paste.
1
! Export nodal results from Ansys APDL to unstructured VTK file with unstructured grid for use in ParaView
2
! Tested with Ansys Mechanical 17.2 and ParaView 5.4.1
3
! Code based on https://www.youtube.com/watch?v=RmsM2JZNT7g
4
! Use at your own risk
5
6
arg1='S,EQV' ! *get,my_results(j),NODE,n_j,...
7
8
/post1
9
set,last ! Needed to load node-and-element model in Ansys Workbench.
10
11
esel,all
12
nsle,s,CORNER
13
 
14
*get,e_cou,ELEM,,count 
15
*get,n_cou,NODE,,count
16
*get,e_min,ELEM,,num,min
17
*get,n_min,NODE,,num,min
18
*get,n_max,NODE,,num,max
19
20
*dim,e_nodes,,e_cou,20
21
*dim,e_nodes_mat,CHAR,e_cou,21
22
*dim,e_nodes_count,,e_cou
23
*dim,e_types,,e_cou
24
*dim,e_types_name,,e_cou
25
*dim,e_types_VTK,,e_cou
26
*dim,node_id,,n_max
27
*dim,n_x,,n_max
28
*dim,n_y,,n_max
29
*dim,n_z,,n_max
30
*dim,my_results,,n_max
31
*dim,cell_str,STRING,e_cou
32
*dim,e_types_Ansys_to_VTK,,300
33
34
e_types_Ansys_to_VTK(5)=12     ! SOLID5 (3-D Coupled-Field Solid)
35
e_types_Ansys_to_VTK(11)=3     ! LINK11 (Linear Actuator)
36
e_types_Ansys_to_VTK(13)=9     ! PLANE13 (2-D Coupled-Field Solid)
37
e_types_Ansys_to_VTK(14)=3     ! COMBIN14 (Spring-Damper)
38
e_types_Ansys_to_VTK(21)=1     ! MASS21 (Structural Mass)
39
e_types_Ansys_to_VTK(25)=9     ! PLANE25 (Axisymmetric-Harmonic 4-Node Structural Solid)
40
e_types_Ansys_to_VTK(27)=3     ! MATRIX27 (Stiffness, Damping, or Mass Matrix)
41
e_types_Ansys_to_VTK(29)=9     ! FLUID29 (2-D Axisymmetric Harmonic Acoustic Fluid)
42
e_types_Ansys_to_VTK(30)=12    ! FLUID30 (3-D Acoustic Fluid)
43
e_types_Ansys_to_VTK(31)=3     ! LINK31 (Radiation Link)
44
e_types_Ansys_to_VTK(33)=3     ! LINK33 (3-D Conduction Bar)
45
e_types_Ansys_to_VTK(34)=3     ! LINK34 (Convection Link)
46
e_types_Ansys_to_VTK(35)=5     ! PLANE35 (2-D 6-Node Triangular Thermal Solid)
47
e_types_Ansys_to_VTK(36)=5     ! SOURC36 (Current Source)
48
e_types_Ansys_to_VTK(37)=4     ! COMBIN37 (Control)
49
e_types_Ansys_to_VTK(38)=3     ! FLUID38 (Dynamic Fluid Coupling)
50
e_types_Ansys_to_VTK(39)=3     ! COMBIN39 (Nonlinear Spring)
51
e_types_Ansys_to_VTK(40)=3     ! COMBIN40 (Combination)
52
e_types_Ansys_to_VTK(47)=9     ! INFIN47 (3-D Infinite Boundary)
53
e_types_Ansys_to_VTK(50)=-1000 ! MATRIX50 (Superelement (or Substructure))
54
e_types_Ansys_to_VTK(55)=9     ! PLANE55 (2-D Thermal Solid)
55
e_types_Ansys_to_VTK(61)=3     ! SHELL61 (Axisymmetric-Harmonic Structural Shell)
56
e_types_Ansys_to_VTK(65)=12    ! SOLID65 (3-D Reinforced Concrete Solid)
57
e_types_Ansys_to_VTK(68)=3     ! LINK68 (Coupled Thermal-Electric Line)
58
e_types_Ansys_to_VTK(70)=12    ! SOLID70 (3-D Thermal Solid)
59
e_types_Ansys_to_VTK(71)=1     ! MASS71 (Thermal Mass)
60
e_types_Ansys_to_VTK(75)=9     ! PLANE75 (Axisymmetric-Harmonic 4-Node Thermal Solid)
61
e_types_Ansys_to_VTK(77)=9     ! PLANE77 (2-D 8-Node Thermal Solid)
62
e_types_Ansys_to_VTK(78)=9     ! PLANE78 (Axisymmetric-Harmonic 8-Node Thermal Solid)
63
e_types_Ansys_to_VTK(83)=9     ! PLANE83 (Axisymmetric-Harmonic 8-Node Structural Solid)
64
e_types_Ansys_to_VTK(87)=10    ! SOLID87 (3-D 10-Node Tetrahedral Thermal Solid)
65
e_types_Ansys_to_VTK(90)=12    ! SOLID90 (3-D 20-Node Thermal Solid)
66
e_types_Ansys_to_VTK(94)=4     ! CIRCU94 (Piezoelectric Circuit)
67
e_types_Ansys_to_VTK(96)=12    ! SOLID96 (3-D Magnetic Scalar Solid)
68
e_types_Ansys_to_VTK(98)=10    ! SOLID98 (Tetrahedral Coupled-Field Solid)
69
e_types_Ansys_to_VTK(110)=9    ! INFIN110 (2-D Infinite Solid)
70
e_types_Ansys_to_VTK(111)=12   ! INFIN111 (3-D Infinite Solid)
71
e_types_Ansys_to_VTK(116)=3    ! FLUID116 (Coupled Thermal-Fluid Pipe)
72
e_types_Ansys_to_VTK(121)=9    ! PLANE121 (2-D 8-Node Electrostatic Solid)
73
e_types_Ansys_to_VTK(122)=12   ! SOLID122 (3-D 20-Node Electrostatic Solid)
74
e_types_Ansys_to_VTK(123)=10   ! SOLID123 (3-D 10-Node Tetrahedral Electrostatic Solid)
75
e_types_Ansys_to_VTK(124)=4    ! CIRCU124 (Electric Circuit)
76
e_types_Ansys_to_VTK(125)=4    ! CIRCU125 (Diode)
77
e_types_Ansys_to_VTK(126)=3    ! TRANS126 (Electromechanical Transducer)
78
e_types_Ansys_to_VTK(129)=3    ! FLUID129 (2-D Infinite Acoustic)
79
e_types_Ansys_to_VTK(130)=9    ! FLUID130 (3-D Infinite Acoustic)
80
e_types_Ansys_to_VTK(131)=9    ! SHELL131 (4-Node Thermal Shell)
81
e_types_Ansys_to_VTK(132)=9    ! SHELL132 (8-Node Thermal Shell)
82
e_types_Ansys_to_VTK(136)=9    ! FLUID136 (3-D Squeeze Film Fluid Element)
83
e_types_Ansys_to_VTK(138)=3    ! FLUID138 (3-D Viscous Fluid Link Element)
84
e_types_Ansys_to_VTK(139)=4    ! FLUID139 (3-D Slide Film Fluid Element)
85
e_types_Ansys_to_VTK(144)=4    ! ROM144 (Reduced Order Electrostatic-Structural)
86
e_types_Ansys_to_VTK(151)=3    ! SURF151 (2-D Thermal Surface Effect)
87
e_types_Ansys_to_VTK(152)=9    ! SURF152 (3-D Thermal Surface Effect)
88
e_types_Ansys_to_VTK(153)=3    ! SURF153 (2-D Structural Surface Effect)
89
e_types_Ansys_to_VTK(154)=9    ! SURF154 (3-D Structural Surface Effect)
90
e_types_Ansys_to_VTK(155)=3    ! SURF155 (3-D Thermal Surface Effect)
91
e_types_Ansys_to_VTK(156)=3    ! SURF156 (3-D Structural Surface Line Load Effect)
92
e_types_Ansys_to_VTK(157)=9    ! SHELL157 (Thermal-Electric Shell)
93
e_types_Ansys_to_VTK(159)=-1000! SURF159 (General Axisymmetric Surface)
94
e_types_Ansys_to_VTK(160)=5    ! LINK160 (Explicit 3-D Spar (or Truss))
95
e_types_Ansys_to_VTK(161)=5    ! BEAM161 (Explicit 3-D Beam)
96
e_types_Ansys_to_VTK(162)=9    ! PLANE162 (Explicit 2-D Structural Solid)
97
e_types_Ansys_to_VTK(163)=9    ! SHELL163 (Explicit Thin Structural Shell)
98
e_types_Ansys_to_VTK(164)=12   ! SOLID164 (Explicit 3-D Structural Solid)
99
e_types_Ansys_to_VTK(165)=3    ! COMBI165 (Explicit Spring-Damper)
100
e_types_Ansys_to_VTK(166)=1    ! MASS166 (Explicit 3-D Structural Mass)
101
e_types_Ansys_to_VTK(167)=5    ! LINK167 (Explicit Tension-Only Spar)
102
e_types_Ansys_to_VTK(168)=10   ! SOLID168 (Explicit 3-D 10-Node Tetrahedral Structural Solid)
103
e_types_Ansys_to_VTK(169)=3    ! TARGE169 (2-D Target Segment)
104
e_types_Ansys_to_VTK(170)=9    ! TARGE170 (3-D Target Segment)
105
e_types_Ansys_to_VTK(171)=3    ! CONTA171 (2-D 2-Node Surface-to-Surface Contact)
106
e_types_Ansys_to_VTK(172)=3    ! CONTA172 (2-D 3-Node Surface-to-Surface Contact )
107
e_types_Ansys_to_VTK(173)=9    ! CONTA173 (3-D 4-Node Surface-to-Surface Contact)
108
e_types_Ansys_to_VTK(174)=9    ! CONTA174 (3-D 8-Node Surface-to-Surface Contact)
109
e_types_Ansys_to_VTK(175)=1    ! CONTA175 (2-D/3-D Node-to-Surface Contact)
110
e_types_Ansys_to_VTK(176)=3    ! CONTA176 (3-D Line-to-Line Contact)
111
e_types_Ansys_to_VTK(177)=3    ! CONTA177 (3-D Line-to-Surface Contact)
112
e_types_Ansys_to_VTK(178)=3    ! CONTA178 (3-D Node-to-Node Contact)
113
e_types_Ansys_to_VTK(179)=5    ! PRETS179 (Pretension)
114
e_types_Ansys_to_VTK(180)=3    ! LINK180 (3-D Spar (or Truss))
115
e_types_Ansys_to_VTK(181)=9    ! SHELL181 (4-Node Structural Shell)
116
e_types_Ansys_to_VTK(182)=9    ! PLANE182 (2-D 4-Node Structural Solid)
117
e_types_Ansys_to_VTK(183)=9    ! PLANE183 (2-D 8-Node or 6-Node Structural Solid)
118
e_types_Ansys_to_VTK(184)=4    ! MPC184 (Multipoint Constraint Element)
119
e_types_Ansys_to_VTK(184)=4    ! MPC184-Link/Beam (Multipoint Constraint Element: Rigid Link or Rigid Beam)
120
e_types_Ansys_to_VTK(184)=4    ! MPC184-Slider (Multipoint Constraint Element: Slider)
121
e_types_Ansys_to_VTK(184)=4    ! MPC184-Revolute (Multipoint Constraint Element: Revolute Joint)
122
e_types_Ansys_to_VTK(184)=4    ! MPC184-Universal (Multipoint Constraint Element: Universal Joint)
123
e_types_Ansys_to_VTK(184)=4    ! MPC184-Slot (Multipoint Constraint Element: Slot Joint)
124
e_types_Ansys_to_VTK(184)=4    ! MPC184-Point (Multipoint Constraint Element: Point-in-plane Joint)
125
e_types_Ansys_to_VTK(184)=4    ! MPC184-Translational (Multipoint Constraint Element: Translational Joint)
126
e_types_Ansys_to_VTK(184)=4    ! MPC184-Cylindrical (Multipoint Constraint Element: Cylindrical Joint)
127
e_types_Ansys_to_VTK(184)=4    ! MPC184-Planar (Multipoint Constraint Element: Planar Joint)
128
e_types_Ansys_to_VTK(184)=4    ! MPC184-Weld (Multipoint Constraint Element: Weld Joint)
129
e_types_Ansys_to_VTK(184)=4    ! MPC184-Orient (Multipoint Constraint Element: Orient Joint)
130
e_types_Ansys_to_VTK(184)=4    ! MPC184-Spherical (Multipoint Constraint Element: Spherical Joint)
131
e_types_Ansys_to_VTK(184)=4    ! MPC184-General (Multipoint Constraint Element: General Joint)
132
e_types_Ansys_to_VTK(184)=4    ! MPC184-Screw (Multipoint Constraint Element: Screw Joint)
133
e_types_Ansys_to_VTK(185)=12   ! SOLID185 (3-D 8-Node Structural Solid)
134
e_types_Ansys_to_VTK(186)=12   ! SOLID186 (3-D 20-Node Structural Solid)
135
e_types_Ansys_to_VTK(187)=10   ! SOLID187 (3-D 10-Node Tetrahedral Structural Solid)
136
e_types_Ansys_to_VTK(188)=5    ! BEAM188 (3-D 2-Node Beam)
137
e_types_Ansys_to_VTK(189)=9    ! BEAM189 (3-D 3-Node Beam)
138
e_types_Ansys_to_VTK(190)=12   ! SOLSH190 (3-D 8-Node Structural Solid Shell)
139
e_types_Ansys_to_VTK(192)=9    ! INTER192 (2-D 4-Node Gasket)
140
e_types_Ansys_to_VTK(193)=9    ! INTER193 (2-D 6-Node Gasket)
141
e_types_Ansys_to_VTK(194)=12   ! INTER194 (3-D 16-Node Gasket)
142
e_types_Ansys_to_VTK(195)=12   ! INTER195 (3-D 8-Node Gasket)
143
e_types_Ansys_to_VTK(200)=-1000! MESH200 (Meshing Facet)
144
e_types_Ansys_to_VTK(201)=1    ! FOLLW201 (Follower Load)
145
e_types_Ansys_to_VTK(202)=9    ! INTER202 (2-D 4-Node Cohesive)
146
e_types_Ansys_to_VTK(203)=7    ! INTER203 (2-D 6-Node Cohesive)
147
e_types_Ansys_to_VTK(204)=-1000! INTER204 (3-D 16-Node Cohesive)
148
e_types_Ansys_to_VTK(205)=12   ! INTER205 (3-D 8-Node Cohesive)
149
e_types_Ansys_to_VTK(208)=3    ! SHELL208 (2-Node Axisymmetric Shell)
150
e_types_Ansys_to_VTK(209)=3    ! SHELL209 (3-Node Axisymmetric Shell)
151
e_types_Ansys_to_VTK(212)=9    ! CPT212 (2-D 4-Node Coupled Pore-Pressure Mechanical Solid)
152
e_types_Ansys_to_VTK(213)=9    ! CPT213 (2-D 8-Node Coupled Pore-Pressure Mechanical Solid)
153
e_types_Ansys_to_VTK(214)=3    ! COMBI214 (2-D Spring-Damper Bearing)
154
e_types_Ansys_to_VTK(215)=12   ! CPT215 (3-D 8-Node Coupled Pore-Pressure Mechanical Solid)
155
e_types_Ansys_to_VTK(216)=12   ! CPT216 (3-D 20-Node Coupled Pore-Pressure Mechanical Solid )
156
e_types_Ansys_to_VTK(217)=10   ! CPT217 (3-D 10-Node Coupled Pore-Pressure Mechanical Solid)
157
e_types_Ansys_to_VTK(218)=9    ! FLUID218 (3-D Hydrodynamic Bearing Element)
158
e_types_Ansys_to_VTK(220)=12   ! FLUID220 (3-D Acoustic Fluid 20-Node Solid Element)
159
e_types_Ansys_to_VTK(221)=10   ! FLUID221 (3-D Acoustic Fluid 10-Node Solid Element)
160
e_types_Ansys_to_VTK(223)=9    ! PLANE223 (2-D 8-Node Coupled-Field Solid)
161
e_types_Ansys_to_VTK(226)=12   ! SOLID226 (3-D 20-Node Coupled-Field Solid)
162
e_types_Ansys_to_VTK(227)=10   ! SOLID227 (3-D 10-Node Coupled-Field Solid)
163
e_types_Ansys_to_VTK(230)=9    ! PLANE230 (2-D 8-Node Electric Solid)
164
e_types_Ansys_to_VTK(231)=12   ! SOLID231 (3-D 20-Node Electric Solid)
165
e_types_Ansys_to_VTK(232)=10   ! SOLID232 (3-D 10-Node Tetrahedral Electric Solid)
166
e_types_Ansys_to_VTK(233)=9    ! PLANE233 (2-D 8-Node Electromagnetic Solid )
167
e_types_Ansys_to_VTK(236)=12   ! SOLID236 (3-D 20-Node Electromagnetic Solid)
168
e_types_Ansys_to_VTK(237)=10   ! SOLID237 (3-D 10-Node Electromagnetic Solid)
169
e_types_Ansys_to_VTK(238)=9    ! PLANE238 (2-D 8-Node Diffusion Solid)
170
e_types_Ansys_to_VTK(239)=12   ! SOLID239 (3-D 20-Node Diffusion Solid)
171
e_types_Ansys_to_VTK(240)=10   ! SOLID240 (3-D 10-Node Tetrahedral Diffusion Solid)
172
e_types_Ansys_to_VTK(241)=9    ! HSFLD241 (2-D Hydrostatic Fluid)
173
e_types_Ansys_to_VTK(242)=-1000! HSFLD242 (3-D Hydrostatic Fluid)
174
e_types_Ansys_to_VTK(251)=3    ! SURF251 (2-D Radiosity Surface)
175
e_types_Ansys_to_VTK(252)=9    ! SURF252 (3-D Radiosity Surface)
176
e_types_Ansys_to_VTK(257)=12   ! INFIN257 (Structural Infinite Solid)
177
e_types_Ansys_to_VTK(263)=9    ! REINF263 (2-D Smeared Reinforcing)
178
e_types_Ansys_to_VTK(264)=12   ! REINF264 (3-D Discrete Reinforcing)
179
e_types_Ansys_to_VTK(265)=-1000! REINF265 (3-D Smeared Reinforcing)
180
e_types_Ansys_to_VTK(272)=-1000! SOLID272 (General Axisymmetric Solid with 4 Base Nodes)
181
e_types_Ansys_to_VTK(273)=-1000! SOLID273 (General Axisymmetric Solid with 8 Base Nodes)
182
e_types_Ansys_to_VTK(278)=12   ! SOLID278 (3-D 8-Node Thermal Solid)
183
e_types_Ansys_to_VTK(279)=12   ! SOLID279 (3-D 20-Node Thermal Solid)
184
e_types_Ansys_to_VTK(281)=9    ! SHELL281 (8-Node Structural Shell)
185
e_types_Ansys_to_VTK(285)=10   ! SOLID285 (3-D 4-Node Tetrahedral Structural Solid with Nodal Pressures)
186
e_types_Ansys_to_VTK(288)=3    ! PIPE288 (3-D 2-Node Pipe)
187
e_types_Ansys_to_VTK(289)=3    ! PIPE289 (3-D 3-Node Pipe )
188
e_types_Ansys_to_VTK(290)=3    ! ELBOW290 (3-D 3-Node Elbow)
189
e_types_Ansys_to_VTK(300)=-1000! USER300 (User-Defined Element)
190
191
result_name=''
192
n_chars=STRLENG(arg1)
193
*do,i,1,n_chars
194
	char=STRSUB(arg1,i,1)
195
	*if,char,EQ,',',THEN
196
		char='_'
197
	*endif
198
	result_name=STRCAT(result_name,char)
199
*enddo
200
201
*cfopen,my_results,txt
202
*vwrite,arg1
203
('*get,my_results(j),NODE,n_j,',A8)
204
*cfclos
205
206
n_j=n_min
207
*do,j,1,n_cou
208
	node_id(n_j)=j-1
209
	n_x(j)=nx(n_j)
210
	n_y(j)=ny(n_j)
211
	n_z(j)=nz(n_j)
212
	/input,my_results,txt
213
	n_j=ndnext(n_j)
214
*enddo
215
/DELETE, my_results.txt
216
217
cells_size=0
218
e_i=e_min
219
*do,i,1,e_cou
220
	cells_size=cells_size+1
221
	e_nodes_count(i)=0
222
	cellstr=''
223
	*do,j,1,20
224
		n_j=nelem(e_i,j)
225
		*if,NSEL(n_j),NE,-1,THEN
226
 			e_nodes_count(i)=e_nodes_count(i)+1
227
			e_nodes(i,j)=node_id(n_j)
228
			e_nodes_mat(i,j+1)=CHRVAL(node_id(n_j))
229
			cells_size=cells_size+1
230
		*else
231
			*exit
232
		*endif
233
	*enddo
234
	e_nodes_mat(i,1)=CHRVAL(e_nodes_count(i))
235
	*get,e_types(i),ELEM,e_i,ATTR,TYPE
236
	*get,e_types_name(i),ETYP,e_types(i),ATTR,ENAM
237
	e_types_VTK(i)=e_types_Ansys_to_VTK(e_types_name(i))
238
	e_i=elnext(e_i) 
239
*enddo
240
241
*cfopen,output,vtk
242
243
*vwrite,
244
('# vtk DataFile Version 2.0')
245
*vwrite,
246
('Unstructured Grid')
247
*vwrite,
248
('ASCII')
249
*vwrite,
250
('DATASET UNSTRUCTURED_GRID')
251
*vwrite,n_cou
252
('POINTS ',F0.0,TL1,' float')
253
254
*vwrite,n_x(1),n_y(1),n_z(1)
255
(1PE12.5,' ',1PE12.5,' '1PE12.5)
256
257
*vwrite,e_cou,cells_size
258
('CELLS ',F0.0,TL1,' ',F0.0,TL1,' ')
259
260
*cfclose
261
262
263
/NOPR
264
/output,output,vtk,,append
265
*mwrite,e_nodes_mat(1,1)
266
(21(A8,' '))
267
/output
268
/GOPR
269
270
271
*cfopen,output,vtk,,APPEND
272
273
*vwrite,e_cou
274
('CELL_TYPES ',F0.0,TL1,' ')
275
276
*vwrite,e_types_VTK(1)
277
(F0.0,TL1,' ')
278
279
*vwrite,n_cou
280
('POINT_DATA ',F0.0,TL1,' ')
281
282
*vwrite,result_name
283
('SCALARS ',A8,' float 1')
284
285
*vwrite
286
('LOOKUP_TABLE default')
287
288
*vwrite,my_results(1)
289
(1PE12.5)
290
291
*cfclose