CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > ANSYS > ANSYS Meshing & Geometry

[ICEM] ICEM Scripting Issues

Register Blogs Community New Posts Updated Threads Search

Like Tree4Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 22, 2012, 07:26
Default ICEM Scripting Issues
  #1
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Hey,
Having a few issues with ICEM and getting scripting to work. As per the Ansys tutorial on youtube (the 3 part series) I've made a mesh with ICEM (with a few more blocks and a better mesh etc).

The problem is that when I go and change the formatted data point file in the scripting to another aerofoil and run it in a new project, it will do all the scripting fine, but when I look at the mesh near the wing...it sort of works, but also doesn't. Basically the mesh does conform to SOME of the new aerofoil, but some of it still conforms to the old one which I meshed everything off.

Do you have any ideas as to why this may be happening/suggestions around it. Ideally I want to be able to change the file it imports the data points from and the filename of the one it outputs to and be able to run it and have it work for all the aerofoils I test. (To ensure it does work I am only using naca airfoils with 51 points per spline and 2 splines)

Thanks for your help
nuaawubin and blgypeng like this.
tylerplowright is offline   Reply With Quote

Old   May 23, 2012, 08:34
Default update
  #2
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Hey,
Played around with the software/scripting a little more to get a mesh that works better HOWEVER scripting now has elements all over the aerofoil. I have no idea why its doing this so your help would be great. I've attached pictures (hopefully and I apologize if the pictures are too large) of what it should look like, and a different aerofoil which has been made using the script. If I use the same airfoil it works fine when scripting (which makes sense seeing as its just replaying what I have done).

Any help would be great as I'm really stuck here.

Thanks
Tyler

What its supposed to look like
http://imageshack.us/photo/my-images/191/meshf.png/

Scripting with another airfoil
http://imageshack.us/photo/my-images/593/mesh2.png/
tylerplowright is offline   Reply With Quote

Old   May 23, 2012, 10:16
Default
  #3
Senior Member
 
PSYMN's Avatar
 
Simon Pereira
Join Date: Mar 2009
Location: Ann Arbor, MI
Posts: 2,663
Blog Entries: 1
Rep Power: 47
PSYMN has a spectacular aura aboutPSYMN has a spectacular aura about
The most common mistake people make with scripting is to use commands that are not parametric... For instance, they may split based on a screen select instead of by a percentage or by a point location. Look for commands that are based on XYZ or interactive selections rather than being based on the underlying (and changing) geometry points.

Your second problem appears to be that the edge which should be projecting to the lower curve is instead projecting to the other side... In other words, both the upper and lower edge are projecting to the same side (the concave side) of the airfoil... Perhaps your curve has one name all the way around so the association is projecting to the nearest side and you need to use some sort of split with an association to a particular point to bring things back under control.
__________________
-----------------------------------------
Please help guide development at ANSYS by filling in these surveys

Public ANSYS ICEM CFD Users Survey

This second one is more general (Gambit, TGrid and ANSYS Meshing users welcome)...

CFD Online Users Survey
PSYMN is offline   Reply With Quote

Old   May 23, 2012, 10:22
Default
  #4
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
may be putting autoupdate command solve this problem in addition to snap command
Far is offline   Reply With Quote

Old   May 23, 2012, 20:42
Default
  #5
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Thanks for those replies. Here is the code where its stuffing up. The bits in Red (they were in red, before I put them in quotes) are where I think it may be having problems, however I am unsure exactly what the difference between a percentage selection, point selection or screen selection would look like in the code. When I look at either wing (the one I designed it with, or the different series which stuffed up) they both say the top and bottom spline are different curves. i.e. curve 1 on the top and curve 0 on the bottom.

Code:
1. ic_geo_cre_geom_input {C:/MAJOR PROJECT - Copy/naca9210.dat} 0.001 input PNTS pnt CRVS crv SURFS {}
2. ic_boco_solver
3. ic_boco_clear_icons
4. ic_csystem_display all 0
5. ic_csystem_set_current global
6. ic_boco_nastran_csystem reset
7. ic_geo_new_family GEOM
8. ic_boco_set_part_color GEOM
9. ic_point {} GEOM pnt.00 -25,0,0
10. ic_point {} GEOM pnt.01 20,30,0
11. ic_point {} GEOM pnt.02 20,-30,0
12. ic_geo_new_family FF
13. ic_boco_set_part_color FF
14. ic_gui_set va_set(name)
15. ic_delete_geometry curve names crv.00 0
16. ic_curve point FF crv.00 {pnt.01 pnt.00 pnt.02}
17. ic_gui_set va_set(name)
18. ic_delete_geometry curve names crv.01 0
19. ic_curve point FF crv.01 {pnt.01 pnt.02}
20. ic_geo_new_family FLUID
21. ic_boco_set_part_color FLUID
22. ic_surface 2-4crvs FLUID srf.00 {0.01 {crv.00 crv.01}}
23. ic_set_dormant_pickable point 0 {}
24. ic_set_dormant_pickable curve 0 {}
25. ic_hex_initialize_mesh 2d new_numbering new_blocking FLUID
26. ic_hex_switch_blocking root
27. ic_hex_unblank_blocks
28. ic_hex_multi_grid_level 0
29. ic_hex_projection_limit 0
30. ic_hex_default_bunching_law default 2.0
31. ic_hex_floating_grid off
32. ic_hex_transfinite_degree 1
33. ic_hex_unstruct_face_type one_tri
34. ic_hex_set_n_tetra_smoothing_steps 20
35. ic_hex_set_mesh_params PNTS CRVS GEOM FF FLUID -version 110
36. ic_hex_error_messages off_minor
37. ic_hex_switch_blocking root
38. ic_hex_set_edge_projection 19 21 0 1 crv.01
39. ic_hex_set_edge_projection 13 21 0 1 crv.00
40. ic_hex_set_edge_projection 11 13 0 1 crv.00
41. ic_hex_set_edge_projection 11 19 0 1 crv.00
42. ic_hex_project_to_surface FLUID FF GEOM PNTS CRVS
43. ic_hex_unstruct_face_type
44. ic_hex_mark_blocks unmark
45. ic_hex_mark_blocks superblock 4
46. ic_hex_mark_blocks numbers 19 21 edge_neighbors
47. ic_hex_ogrid 1 m PNTS CRVS GEOM FF FLUID -version 50
48. ic_hex_mark_blocks unmark
49. ic_hex_mark_blocks unmark
50. ic_hex_split_grid 33 35 0.363433 m PNTS CRVS GEOM FF FLUID VORFN
51. ic_hex_mark_blocks unmark
52. ic_hex_mark_blocks superblock 4
53. ic_hex_change_element_id VORFN
54. ic_hex_set_edge_projection 33 42 0 1 crv1
55. ic_hex_set_edge_projection 32 40 0 1 crv0
56. ic_hex_project_to_surface FLUID FF GEOM PNTS CRVS
57. ic_hex_place_node 40 curve:crv0 0
58. ic_hex_mark_blocks unmark
59. ic_hex_mark_blocks superblock 17
60. ic_hex_collapse_blocks 1 version 410
61. ic_hex_place_node 41 curve:crv.00 0.108140292
62. ic_hex_place_node 39 curve:crv.00 0.889533474
63. ic_hex_split_grid 13 41 0.257948 m PNTS CRVS GEOM FF FLUID VORFN
64. ic_hex_split_grid 13 33 0.959263 m PNTS CRVS GEOM FF FLUID VORFN
65. ic_hex_place_node 55 -0.364803433 0.396880209 0

There are several of the above line of code for different nodes (whilst I moved them into the position I wanted)

118. ic_hex_place_node 48 curve:crv1 0.0580021418
119. ic_hex_place_node 47 curve:crv.00 0.153213016

Again there are several of the above line of code for different nodes

131. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
132. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 3.41322556642e-006 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
133. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 3.41322556642e-006 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
134. ic_hex_set_mesh 51 52 n 200 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
135. ic_hex_set_mesh 51 52 n 200 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
136. ic_hex_set_mesh 50 51 n 40 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
137. ic_hex_set_mesh 50 51 n 40 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
138. ic_hex_set_mesh 50 55 n 20 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
139. ic_hex_set_mesh 50 55 n 20 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
140. ic_hex_set_mesh 13 55 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
141. ic_hex_set_mesh 13 55 n 70 h1rel 0.0 h2rel 0.000748040134847 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
142. ic_hex_set_mesh 42 35 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
143. ic_hex_set_mesh 42 35 n 70 h1rel 0.000263157894737 h2rel 0.0 r1 1.2 r2 2 lmax 0 default copy_to_parallel unlocked

Move moving of nodes

173. ic_hex_create_composite {crv0 crv1}
174. ic_hex_set_edge_projection 32 33 0 1 crv0
175. ic_hex_undo_major_start auto_edge_split
176. ic_hex_auto_split_edge 48 42
177. ic_hex_undo_major_end auto_edge_split
178. ic_hex_undo_major_start auto_edge_split
179. ic_hex_auto_split_edge 46 42
180. ic_hex_undo_major_end auto_edge_split
181. ic_hex_undo_major_start auto_edge_split
182. ic_hex_auto_split_edge 32 46
183. ic_hex_undo_major_end auto_edge_split
184. ic_hex_undo_major_start auto_edge_split
185. ic_hex_auto_split_edge 32 33
186. ic_hex_undo_major_end auto_edge_split
187. ic_hex_undo_major_start auto_edge_split
188. ic_hex_auto_split_edge 33 48
189. ic_hex_undo_major_end auto_edge_split
190. ic_hex_create_mesh PNTS CRVS GEOM FF FLUID proj 2 dim_to_mesh 3
191. ic_hex_write_file hex.uns PNTS CRVS GEOM FF FLUID proj 2 dim_to_mesh 3 -family_boco family_boco.fbc
192. ic_uns_load hex.uns 3 0 {} 2
193. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
194. ic_uns_diag_reset_degen_min_max
195. ic_boco_solver
196. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
197. ic_boco_clear_icons
198. ic_csystem_display all 0
199. ic_csystem_set_current global
200. ic_boco_nastran_csystem reset
201. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
202. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
203. ic_uns_create_selection_subset 0
204. ic_uns_create_selection_edgelist 1
205. ic_uns_subset_configure uns_sel_0 -draw_nodes 1
206. ic_uns_subset_visible uns_sel_0 0
207. ic_uns_subset_copy uns_sel_0 all 2
208. ic_uns_uniqify uns_sel_0
209. ic_uns_subset_visible uns_sel_0 0
210. ic_uns_create_selection_edgelist 0
211. ic_extrude map uns_sel_0 numlayers 1 dir normal space 0.01 space_func {} rpoint {0 0 0} rdir {0 0 0} rangle 10.0 volf inherited sidef inherited topf inherited curve {} curvedir 0 twist 0 del_orig 0 del_covered 1 degen_tol 0.00001 trans_rot_vec {0 0 1} spacing_transl_rot 0.0 project 0
212. ic_uns_subset_delete uns_sel_0
213. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4 !HEXA_8} update 0
214. ic_boco_solver {ANSYS CFX}
215. ic_solver_mesh_info {ANSYS CFX}
216. ic_boco_solver
217. ic_boco_save {C:/MAJOR PROJECT - Copy/naca9210.fbc}
218. ic_boco_save_atr {C:/MAJOR PROJECT - Copy/naca9210.atr}
219. ic_save_tetin naca9210.tin 0 0 {} {} 0 0 1
220. ic_uns_check_duplicate_numbers
221. ic_uns_renumber_all_elements 1 1
222. ic_save_unstruct naca9210.uns 1 {} {} {}
223. ic_uns_set_modified 1
224. ic_hex_save_blocking naca9210.blk
225. ic_boco_solver
226. ic_boco_save naca9210.fbc
227. ic_boco_save_atr naca9210.atr
Far: what do you mean by putting in an autoupdate command?

One other thing...is it possible to have it so that the "name" it uses to save everything is a variable or something? That way I only have to change 1 line of code for it to do another aerofoil? I have read some stuff on it however it went over my head, but if someone knows the code which I could just drop in that would be great. This isn't critical, but it would be a nice feature.

Thanks for the speedy replies as well.
Tyler

Last edited by tylerplowright; May 24, 2012 at 05:57.
tylerplowright is offline   Reply With Quote

Old   May 24, 2012, 01:32
Default
  #6
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
I am also new in this field. Just following Simon's suggestions on the scripting. I have run your code and still working on it. I recommend you to mention the name of file and directory explicitly and should be the current directory where files are .

Just give you details soon.
Far is offline   Reply With Quote

Old   May 24, 2012, 06:55
Default
  #7
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Quote:
Originally Posted by Far View Post
I am also new in this field. Just following Simon's suggestions on the scripting. I have run your code and still working on it. I recommend you to mention the name of file and directory explicitly and should be the current directory where files are .

Just give you details soon.
I think I get what Simon is pointing at the only problem is I don't really know how to fix it so that it goes off a point, or percentage. I have an idea where it might be going wrong but I could be totally wrong. But at a guess its happening in lines 38-41, 44-45, 61-62 or 118-130 (with this last lot some aren't shown but all are referenced off a curve as I move the nodes into position along the curve of the aerofoil).

As for the directories, everything is saved in the same directory for simplicity and this directory won't change. When it comes time to do simulations the necessary files will be copied to another computer however this won't affect the creation of the geometry and mesh.

Thanks again for your help
Tyler

UPDATE:
After doing one line at a time and trying a few of the lines manually I've narrowed it down to line 174. This line is where I associate one of the edges of the block at the leading edge of the wing to the two parts of the wing (top and bottom curve). Even if I do this manually it stuffs up. Here are pictures of what it looks like after line 173, and 174.

http://imageshack.us/photo/my-images/19/173zq.png/

http://imageshack.us/photo/my-images/6/174un.png/

Obviously I need to associate edge to curve, however even if I do this manually it stuffs up. All other curves are associated. Any suggestions on how to fix this? Can upload the files if required.

Last edited by tylerplowright; May 25, 2012 at 00:43.
tylerplowright is offline   Reply With Quote

Old   May 25, 2012, 01:03
Default
  #8
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
you can include the edge split commands after line 174 : e.g.

1. spline
2. Automatic Linear etc.
Far is offline   Reply With Quote

Old   May 25, 2012, 01:24
Default
  #9
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Quote:
Originally Posted by Far View Post
you can include the edge split commands after line 174 : e.g.

1. spline
2. Automatic Linear etc.
Thanks for the quick reply Far,
I still need to associate the edge to a curve, otherwise it just cuts a section off the wing by meshing to the line, rather than the curve. Lines 175 onwards work fine, its just that I need to associate the edge of the block to the curve.
Do you have any suggestions on how to do this?
Thanks
Tyler
tylerplowright is offline   Reply With Quote

Old   May 25, 2012, 01:29
Default
  #10
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
could you post a pic?

You get the problem after associating the edge to curve or before it? If you are getting problem after association then just go to edit edge > make it spline or automatic linear and things will not be messed up.
Far is offline   Reply With Quote

Old   May 25, 2012, 02:55
Default
  #11
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Quote:
Originally Posted by Far View Post
could you post a pic?

You get the problem after associating the edge to curve or before it? If you are getting problem after association then just go to edit edge > make it spline or automatic linear and things will not be messed up.
From a previous post, but its still the same problem. Before:
http://imageshack.us/photo/my-images/19/173zq.png/
After:
http://imageshack.us/photo/my-images/6/174un.png/

I get the problem after associating edge to curve. Even if I edit edge and make it automatic linear, the edge does follow the curve, but the mesh still goes straight over the aerofoil just like in the second picture (except the second picture shows it without the automatic linear on the block near the leading edge). Could it be to do with line 173 where it joins the two curves into the one curve? I have tried running the script from line 1 to 172, associating edge to curve, and then running line 173, then 175 onwards however this didn't work either. I also tried 1-172, associating edge to curve and then 175 onwards.

From what i can gather, lines 1-172 work fine, the problem is one or both of 173/174.

Any other idea's?
Thanks again for quick responses
Tyler
tylerplowright is offline   Reply With Quote

Old   May 25, 2012, 04:10
Default
  #12
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Files uploaded. 4 files in total, 2 .dat files which are for the airfoils. NACA9210 is what the script was created on, and NACA9608 is the airfoil which is most dissimilar to this that I was planning on testing.

2 scripting files. The replay_file5_output_clean.rpl is the one I posted before, the replay_file5_output_updated(clean).rpl was where I changed a couple of the earlier processes from screen select to percentage so that it was related to the curve. I have not fully tested this second script to make sure it works up to line 172 however I'm still fairly confident that it works.

Thanks for your help
Tyler
Attached Files
File Type: zip Files.zip (12.7 KB, 48 views)
tylerplowright is offline   Reply With Quote

Old   May 25, 2012, 14:24
Default Edge split problem
  #13
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
I found the problem and is the same as I suspected earlier. . Debugging the script, shall upload as I get it corrected.







Far is offline   Reply With Quote

Old   May 25, 2012, 15:04
Default
  #14
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
Here is the corrected script along with older one. I have modified the script after the second last line. This is temporary solution and you should put these lines and/or commands at the appropriate place.
Attached Files
File Type: zip scripts_naca9608.zip (12.1 KB, 78 views)
Far is offline   Reply With Quote

Old   May 25, 2012, 20:04
Default
  #15
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Far,
Thanks so much for your help. It works great now and I couldn't have done it without you. I wish you the best of luck with learning the scripting language but if you've picked it up this fast to find my problem I'd say you'll be fine.

Thanks again
Tyler
tylerplowright is offline   Reply With Quote

Old   May 25, 2012, 23:10
Default
  #16
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
Than-you Tyler for appreciation.

Actually this happen because of general ICEM learning, which is due to Simon's mentor-ship.

I just started the recording after 2nd last line and first solved the problem manually (first without recording and after confirmation with recording) and then saved the script. But these commands should be placed in centre of script where you are making other operations on blocking.

Please do post the your final scripting and other problems here.
Far is offline   Reply With Quote

Old   May 26, 2012, 01:10
Default
  #17
Far
Super Moderator
 
Sijal
Join Date: Mar 2009
Location: Islamabad
Posts: 4,553
Blog Entries: 6
Rep Power: 54
Far has a spectacular aura aboutFar has a spectacular aura about
Send a message via Skype™ to Far
Try this. This time adjustments are made at appropriate place
Attached Files
File Type: zip replay_file5_output_clean_corrected_ver2.zip (5.8 KB, 45 views)
Far is offline   Reply With Quote

Old   June 3, 2012, 21:23
Default
  #18
New Member
 
Tyler
Join Date: Apr 2012
Posts: 17
Rep Power: 14
tylerplowright is on a distinguished road
Thanks again for all of your help Far. After some tweaking and removing unnecessary lines of code, the final code is as follows:
Code:
1. ic_geo_cre_geom_input {C:/MAJOR PROJECT/DAE31.dat} 0.001 input PNTS pnt CRVS crv SURFS {}
2. ic_boco_solver
3. ic_boco_clear_icons
4. ic_csystem_display all 0
5. ic_csystem_set_current global
6. ic_boco_nastran_csystem reset
7. ic_geo_new_family GEOM
8. ic_boco_set_part_color GEOM
9. ic_point {} GEOM pnt.00 -25,0,0
10. ic_point {} GEOM pnt.01 20,30,0
11. ic_point {} GEOM pnt.02 20,-30,0
12. ic_geo_new_family FF
13. ic_boco_set_part_color FF
14. ic_gui_set va_set(name)
15. ic_delete_geometry curve names crv.00 0
16. ic_curve point FF crv.00 {pnt.01 pnt.00 pnt.02}
17. ic_gui_set va_set(name)
18. ic_delete_geometry curve names crv.01 0
19. ic_curve point FF crv.01 {pnt.01 pnt.02}
20. ic_geo_new_family FLUID
21. ic_boco_set_part_color FLUID
22. ic_surface 2-4crvs FLUID srf.00 {0.01 {crv.00 crv.01}}
23. ic_set_dormant_pickable point 0 {}
24. ic_set_dormant_pickable curve 0 {}
25. ic_hex_initialize_mesh 2d new_numbering new_blocking FLUID
26. ic_hex_switch_blocking root
27. ic_hex_unblank_blocks
28. ic_hex_multi_grid_level 0
29. ic_hex_projection_limit 0
30. ic_hex_default_bunching_law default 2.0
31. ic_hex_floating_grid off
32. ic_hex_transfinite_degree 1
33. ic_hex_unstruct_face_type one_tri
34. ic_hex_set_n_tetra_smoothing_steps 20
35. ic_hex_set_mesh_params PNTS CRVS GEOM FF FLUID -version 110
36. ic_hex_error_messages off_minor
37. ic_hex_switch_blocking root
38. ic_hex_set_edge_projection 19 21 0 1 crv.01
39. ic_hex_set_edge_projection 13 21 0 1 crv.00
40. ic_hex_set_edge_projection 11 13 0 1 crv.00
41. ic_hex_set_edge_projection 11 19 0 1 crv.00
42. ic_hex_project_to_surface FLUID FF GEOM PNTS CRVS
43. ic_hex_unstruct_face_type
44. ic_hex_mark_blocks unmark
45. ic_hex_mark_blocks superblock 4
46. ic_hex_mark_blocks numbers 19 21 edge_neighbors
47. ic_hex_ogrid 1 m PNTS CRVS GEOM FF FLUID -version 50
48. ic_hex_mark_blocks unmark
49. ic_hex_mark_blocks unmark
50. ic_hex_split_grid 33 35 0.363433 m PNTS CRVS GEOM FF FLUID VORFN
51. ic_hex_mark_blocks unmark
52. ic_hex_mark_blocks superblock 4
53. ic_hex_change_element_id VORFN
54. ic_hex_set_edge_projection 33 42 0 1 crv1
55. ic_hex_set_edge_projection 32 40 0 1 crv0
56. ic_hex_project_to_surface FLUID FF GEOM PNTS CRVS
57. ic_hex_place_node 40 curve:crv0 0
58. ic_hex_mark_blocks unmark
59. ic_hex_mark_blocks superblock 17
60. ic_hex_collapse_blocks 1 version 410
61. ic_hex_place_node 41 curve:crv.00 0.108140292
62. ic_hex_place_node 39 curve:crv.00 0.889533474
63. ic_hex_split_grid 13 41 0.257948 m PNTS CRVS GEOM FF FLUID VORFN
64. ic_hex_split_grid 13 33 0.959263 m PNTS CRVS GEOM FF FLUID VORFN
65. ic_hex_place_node 57 1.04819107 0.338175893 0
66. ic_hex_place_node 52 1.05201125 -0.349450529 0
67. ic_hex_place_node 55 -0.20099692 0.215931192 0
68. ic_hex_place_node 56 0.00147085683 0.292334139 0
69. ic_hex_place_node 48 curve:crv1 0.0580021418
70. ic_hex_place_node 45 curve:crv.00 0.760190232
71. ic_hex_place_node 58 curve:crv.01 0.492990315
72. ic_hex_place_node 53 curve:crv.01 0.507301092
73. ic_hex_place_node 39 curve:crv.00 0.914301514
74. ic_hex_place_node 11 curve:crv.00 0.541171663
75. ic_hex_place_node 13 curve:crv.00 0.241022627
76. ic_hex_place_node 47 curve:crv.00 0.148206883
77. ic_hex_place_node 41 curve:crv.00 0.0931036278
78. ic_hex_place_node 32 curve:crv0 0.952891284
79. ic_hex_place_node 46 curve:crv0 0.769600693
80. ic_hex_place_node 51 -0.0141472844 -0.32717976 0
81. ic_hex_place_node 50 -0.323202014 -0.08346802 0
82. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
83. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 3.41322556642e-006 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
84. ic_hex_set_mesh 55 33 n 70 h1rel 0.0 h2rel 3.41322556642e-006 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
85. ic_hex_set_mesh 51 52 n 200 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
86. ic_hex_set_mesh 51 52 n 200 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
87. ic_hex_set_mesh 50 51 n 40 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
88. ic_hex_set_mesh 50 51 n 40 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
89. ic_hex_set_mesh 50 55 n 20 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
90. ic_hex_set_mesh 50 55 n 20 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
91. ic_hex_set_mesh 13 55 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
92. ic_hex_set_mesh 13 55 n 70 h1rel 0.0 h2rel 0.000748040134847 r1 2 r2 1.2 lmax 0 default copy_to_parallel unlocked
93. ic_hex_set_mesh 42 35 n 70 h1rel 0.0 h2rel 0.0 r1 2 r2 2 lmax 0 default copy_to_parallel unlocked
94. ic_hex_set_mesh 42 35 n 70 h1rel 0.000263157894737 h2rel 0.0 r1 1.2 r2 2 lmax 0 default copy_to_parallel unlocked
95. ic_hex_split_edge 46 42 0 0.576805 -0.121285 0
96. ic_hex_split_edge 48 42 0 0.431332 -0.0451865 0
97. ic_hex_create_composite {crv0 crv1}
98. ic_hex_set_edge_projection 32 33 0 1 crv0
99. ic_hex_undo_major_start auto_edge_split
100. ic_hex_auto_split_edge 48 42
101. ic_hex_undo_major_end auto_edge_split
102. ic_hex_undo_major_start auto_edge_split
103. ic_hex_auto_split_edge 46 42
104. ic_hex_undo_major_end auto_edge_split
105. ic_hex_undo_major_start auto_edge_split
106. ic_hex_auto_split_edge 32 46
107. ic_hex_undo_major_end auto_edge_split
108. ic_hex_undo_major_start auto_edge_split
109. ic_hex_auto_split_edge 32 33
110. ic_hex_undo_major_end auto_edge_split
111. ic_hex_undo_major_start auto_edge_split
112. ic_hex_auto_split_edge 33 48
113. ic_hex_undo_major_end auto_edge_split
114. ic_hex_create_mesh PNTS CRVS GEOM FF FLUID proj 2 dim_to_mesh 3
115. ic_hex_write_file hex.uns PNTS CRVS GEOM FF FLUID proj 2 dim_to_mesh 3 -family_boco family_boco.fbc
116. ic_uns_load hex.uns 3 0 {} 2
117. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
118. ic_uns_diag_reset_degen_min_max
119. ic_boco_solver
120. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
121. ic_boco_clear_icons
122. ic_csystem_display all 0
123. ic_csystem_set_current global
124. ic_boco_nastran_csystem reset
125. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
126. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4} update 0
127. ic_uns_create_selection_subset 0
128. ic_uns_create_selection_edgelist 1
129. ic_uns_subset_configure uns_sel_0 -draw_nodes 1
130. ic_uns_subset_visible uns_sel_0 0
131. ic_uns_subset_copy uns_sel_0 all 2
132. ic_uns_uniqify uns_sel_0
133. ic_uns_subset_visible uns_sel_0 0
134. ic_uns_create_selection_edgelist 0
135. ic_extrude map uns_sel_0 numlayers 1 dir normal space 0.01 space_func {} rpoint {0 0 0} rdir {0 0 0} rangle 10.0 volf inherited sidef inherited topf inherited curve {} curvedir 0 twist 0 del_orig 0 del_covered 1 degen_tol 0.00001 trans_rot_vec {0 0 1} spacing_transl_rot 0.0 project 0
136. ic_uns_subset_delete uns_sel_0
137. ic_uns_update_family_type visible {FLUID FF GEOM PNTS ORFN CRVS} {!LINE_2 QUAD_4 !HEXA_8} update 0
138. ic_boco_solver {ANSYS CFX}
139. ic_solver_mesh_info {ANSYS CFX}
140. ic_boco_solver
141. ic_boco_save {C:/MAJOR PROJECT/DAE31.fbc}
142. ic_boco_save_atr {C:/MAJOR PROJECT/DAE31.atr}
143. ic_save_tetin DAE31.tin 0 0 {} {} 0 0 1
144. ic_uns_check_duplicate_numbers
145. ic_uns_renumber_all_elements 1 1
146. ic_save_unstruct DAE31.uns 1 {} {} {}
147. ic_uns_set_modified 1
148. ic_hex_save_blocking DAE31.blk
149. ic_boco_solver
150. ic_boco_save DAE31.fbc
151. ic_boco_save_atr DAE31.atr
152. ic_param_save DAE31.par
153. ic_cart_is_loaded
154. ic_save_project_file {C:/MAJOR PROJECT/DAE31.prj} {array\ set\ file_name\ \{ {    catia_dir .} {    parts_dir .} {    domain_loaded 1} {    cart_file_loaded 0} {    cart_file {}} {    domain_saved DAE31.uns} {    archive {}} {    med_replay {}} {    topology_dir .} {    ugparts_dir .} {    icons {{$env(ICEM_ACN)/lib/ai_env/icons} {$env(ICEM_ACN)/lib/va/EZCAD/icons} {$env(ICEM_ACN)/lib/icons} {$env(ICEM_ACN)/lib/va/CABIN/icons}}} {    tetin DAE31.tin} {    family_boco DAE31.fbc} {    prism_params DAE31.prism_params} {    iges_dir .} {    solver_params_loaded 0} {    attributes_loaded 0} {    project_lock {}} {    attributes DAE31.atr} {    domain DAE31.uns} {    domains_dir .} {    settings_loaded 0} {    settings DAE31.prj} {    blocking DAE31.blk} {    hexa_replay {}} {    transfer_dir .} {    mesh_dir .} {    family_topo {}} {    gemsparts_dir .} {    family_boco_loaded 1} {    tetin_loaded 1} {    project_dir .} {    topo_mulcad_out {}} {    solver_params DAE31.par} \} array\ set\ options\ \{ {    expert 1} {    remote_path {}} {    tree_disp_quad 2} {    tree_disp_pyra 0} {    evaluate_diagnostic 0} {    histo_show_default 1} {    select_toggle_corners 0} {    remove_all 0} {    keep_existing_file_names 0} {    record_journal 0} {    edit_wait 0} {    face_mode all} {    select_mode all} {    med_save_emergency_tetin 1} {    user_name TOSHIBA} {    diag_which all} {    uns_warn_if_display 500000} {    bubble_delay 1000} {    external_num 1} {    tree_disp_tri 2} {    apply_all 0} {    flood_select_angle 0} {    home_after_load 1} {    project_active 0} {    histo_color_by_quality_default 1} {    undo_logging 1} {    tree_disp_hexa 0} {    histo_solid_default 1} {    host_name TOSHIBA-PC} {    xhidden_full 1} {    editor {}} {    mouse_color orange} {    clear_undo 1} {    remote_acn {}} {    remote_sh csh} {    tree_disp_penta 0} {    n_processors 1} {    remote_host {}} {    save_to_new 0} {    quality_info Quality} {    tree_disp_node 0} {    med_save_emergency_mesh 1} {    redtext_color red} {    tree_disp_line 0} {    select_edge_mode 0} {    use_dlremote 0} {    max_mesh_map_size 1024} {    show_tris 1} {    remote_user {}} {    auto_save_views 1} {    max_cad_map_size 512} {    display_origin 0} {    uns_warn_user_if_display 1000000} {    detail_info 0} {    win_java_help 0} {    show_factor 1} {    boundary_mode all} {    clean_up_tmp_files 1} {    med_save_emergency_blocking 1} {    max_binary_tetin 0} {    tree_disp_tetra 0} \} array\ set\ disp_options\ \{ {    uns_dualmesh 0} {    uns_warn_if_display 500000} {    uns_normals_colored 0} {    uns_icons 0} {    uns_locked_elements 0} {    uns_shrink_npos 0} {    uns_node_type None} {    uns_icons_normals_vol 0} {    uns_bcfield 0} {    backup Wire} {    uns_nodes 0} {    uns_only_edges 0} {    uns_surf_bounds 0} {    uns_wide_lines 0} {    uns_vol_bounds 0} {    uns_displ_orient Triad} {    uns_orientation 0} {    uns_directions 0} {    uns_thickness 0} {    uns_shell_diagnostic 0} {    uns_normals 0} {    uns_couplings 0} {    uns_periodicity 0} {    uns_single_surfaces 0} {    uns_midside_nodes 1} {    uns_shrink 100} {    uns_multiple_surfaces 0} {    uns_no_inner 0} {    uns_enums 0} {    uns_disp Wire} {    uns_bcfield_name {}} {    uns_color_by_quality 0} {    uns_changes 0} {    uns_cut_delay_count 1000} \} {set use_xwindows 0} {set icon_size1 24} {set icon_size2 35} {set undo_save_whole_mesh 1} {set undo_max_memory 0} {set gsys_display_list_max_size 100} {set geom_fast_dynamics 1} {set med_fast_dynamics 1} {set tdv_dynamics_speed_thresh 300} {set med_float_precision 0} {set tdv_quadratic_accuracy 9} {set med_index_base 1} {set mesh_min_moving_element_aspect 0.1} {set thickness_defined 0} {set solver_type 1} {set solver_setup 1} {set tdv_background_color {1 #6688dd #ffffff}} {set prompt_for_bld_topo 0} {set prompt_for_bld_topo_opts 0} {set named_sels_as_parts 1} array\ set\ prism_values\ \{ {    n_triangle_smoothing_steps 5} {    min_smoothing_steps 6} {    first_layer_smoothing_steps 1} {    new_volume {}} {    height 0} {    prism_height_limit {}} {    n_tetra_smoothing_steps 10} {    do_checks {}} {    delete_standalone 1} {    ortho_weight 0.50} {    max_aspect_ratio {}} {    ratio_max {}} {    total_height 0} {    use_prism_v10 0} {    intermediate_write 1} {    delete_base_triangles {}} {    ratio_multiplier {}} {    refine_prism_boundary 1} {    max_size_ratio {}} {    triangle_quality {}} {    max_prism_angle 180} {    tetra_smooth_limit 0.3} {    max_jump_factor 5} {    use_existing_quad_layers 0} {    layers 3} {    fillet 0.10} {    into_orphan 0} {    init_dir_from_prev {}} {    blayer_2d 0} {    do_not_allow_sticking {}} {    top_family {}} {    law exponential} {    min_smoothing_val 0.1} {    auto_reduction 0} {    stop_columns 1} {    stair_step 1} {    smoothing_steps 12} {    side_family {}} {    min_prism_quality 0.01} {    ratio 1.2} \} array\ set\ curve_properties\ \{ {    emin_incr 0.1} {    ewid_incr 1} {    brat_incr 0.1} {    hrat_incr 0.1} {    emax_incr 1.0} {    edev_incr 0.1} {    ehgt_incr 0.1} {    nmax_incr 1} \} array\ set\ mesh_option\ \{ {    project_bspline 0} \} {set aie_current_flavor {}} array\ set\ vid_options\ \{ {    wb_NS_to_subset 0} {    auxiliary 0} {    show_name 0} {    inherit 0} {    default_part GEOM} {    new_srf_topo 1} {    DelPerFlag 0} {    show_item_name 0} {    composite_tolerance 1.0} {    replace 0} {    same_pnt_tol 1e-4} {    tdv_axes 1} {    vid_mode 0} {    DelBlkPerFlag 0} \} {set savedTreeVisibility {geomNode 1 geom_subsetNode 2 geomPointNode 2 geomCurveNode 2 geomSurfNode 0 meshNode 1 mesh_subsetNode 2 meshLineNode 0 meshShellNode 2 meshQuadNode 2 meshVolumeNode 0 meshHexaNode 0 blockingNode 1 block_subsetNode 2 block_vertNode 0 block_edgeNode 2 block_faceNode 0 block_blockNode 0 block_meshNode 0 topoNode 2 topo-root 2 partNode 2 part-CRVS 2 part-FF 2 part-FLUID 2 part-GEOM 2 part-PNTS 2 part-VORFN 0}} {set last_view {rot {0 0 0 1} scale {4.53615493567 4.53615493567 4.53615493567} center {-2.38555 0.0295 0.0} pos {0.0 0.0 0}}} array\ set\ cut_info\ \{ {    active 0} {    whole 1} \} array\ set\ hex_option\ \{ {    default_bunching_ratio 2.0} {    floating_grid 0} {    n_tetra_smoothing_steps 20} {    trfDeg 1} {    wr_hexa7 0} {    hexa_verbose_mode 0} {    old_eparams 0} {    multigrid_level 0} {    uns_face_mesh one_tri} {    check_blck 1} {    proj_limit 0} {    check_inv 0} {    hexa_update_mode 1} {    default_bunching_law BiGeometric} \} array\ set\ saved_views\ \{ {    views {}} \} {set tdv_start_spaceball 1}} {ICEM CFD}
155. ic_exec {C:/Program Files/ANSYS Inc/v130/icemcfd/win/icemcfd/output-interfaces/cfx5} -dom DAE31.uns -b DAE31.fbc -ascii -internal_faces {C:/MAJOR PROJECT/DAE31.cfx5}
Works for ALL Naca Profiles as far as I can tell, and for most other wing profiles provided they have enough data points. If someone wants the matlab script to import them, just message me here and I'll post it up as well.

Thanks again
Tyler
nuaawubin likes this.
tylerplowright is offline   Reply With Quote

Old   June 13, 2019, 05:16
Default ICEM CFD Scripting Issues
  #19
New Member
 
Anup Jain
Join Date: Mar 2019
Location: New Hampshire
Posts: 23
Rep Power: 7
jainanup27 is on a distinguished road
Hi,

I want a point on the curve which is at a parameter of 0.4 and 0.8 on the curve. I create this point (In script editor these points are point pt.00 and pt.01) [image 1 and image 2] I then assign vertex ( vertex/node 67 and vertex/node 66) [image 2] to these points respectively. Now when I change the curve dimension (for optimization) and update ICEM CFD the points defined by parameter 0.4 and 0.8 are created but their names are changed on update (pt 04 and pt 05) [image 3]. The problem is that in the script the vertices were assigned to pt.00 and pt.01 and As a result, ICEM CFD throws an error

"Update failed for the Model component in ICEM CFD. Update of the Model component in ICEM CFD did not mark the component as updated due to a change made to the ANSYS Geometry component during the update"


Along with pt.04 and pt.05 it creates pt.01 and pt.00 if I forcefully run the script (the vertices remain attached to pt.00 and pt.01) with warning as shown in image 3
(I want the vertices attached to the points that are located at parameters 0.4 and 0.8 of the curve)


Can someone please help,



Thanks,
Anup
Attached Images
File Type: png image 1 points.png (19.6 KB, 35 views)
File Type: png image 2 script.png (9.5 KB, 22 views)
File Type: png image 3 error and points.png (25.8 KB, 22 views)
jainanup27 is offline   Reply With Quote

Old   June 13, 2019, 07:05
Default
  #20
Senior Member
 
Sebastian Engel
Join Date: Jun 2011
Location: Germany
Posts: 566
Rep Power: 20
bluebase will become famous soon enough
Hi Anup,
could you share your ICEM replay script too?
Best regards,
Sebastian
bluebase is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[ICEM] ICEM CFD Penetrating Elements/Surface Orientation Issues GSbert ANSYS Meshing & Geometry 9 August 13, 2012 05:04
[ICEM] Scripting language version for ICEM 14.0 on win 7 64 bit Far ANSYS Meshing & Geometry 3 May 21, 2012 14:09
[ICEM] meshing issues in ICEM CFD acjoshi ANSYS Meshing & Geometry 3 April 14, 2012 12:01
[ICEM] Meshing Issues in ICEM amod_kumar ANSYS Meshing & Geometry 4 June 23, 2010 07:57
[ICEM] Meshing Issues in ICEM amod_kumar ANSYS Meshing & Geometry 1 June 21, 2010 11:26


All times are GMT -4. The time now is 12:19.