FLUENT 6 - How to find out which interior zone corresponds to a given fluid zone


In a complicated model, to find out which default interior corresponds to a given fluid zone may take some time. It can be done through visual inspection or through changing the default interiors one by one into walls and checking the adjacent fluid zones, but both these methods are cumbersome and time consuming.

The solution is to use the following Scheme function that once read in and run with the targeted fluid zone as argument will produce
as a result a list of all the interior zones which are "immersed" in that fluid zone. The list can contain only one zone which
is the default interior associated with that cell zone, but can contain other interior face zones located completely inside
that fluid zone.
Please be aware that copying and pasting the Scheme function from below may result in lines which are separated
at the wrong place, so in case you will get errors when reading / running the Scheme, let me know and I will provide you the file
through email.

;====================================================================================================
;;; Scheme function to identify which interior zones
;;; are "immersed" in a certain fluid zone
;;; Useful for some visualization problems
;;; or rapid analysis of a problem
;;;
;;; To use it, load the Scheme function through
;;;
;;; File>Read>Scheme ..
;;;
;;; or through
;;;
;;; (load "immersed.scm")
;;;
;;; then use the TUI command (for example)
;;;
;;; (imme-info 'fluid-1)
;;;
;;; You will get one or several interior zones that are
;;; completely immersed into the fluid zone specified
;;; through its name 'fluid-1. One of them is for sure
;;; the Default-Interior associated with that fluid zone.
;;; The others (if present) are interior face zones that
;;; are located inside that fluid zone only.
;;;
;;;
;;; Do not change below this line without calling for support
;;;============================================================
(define (imme-info fluid-zone-name)
(let ((id-fz (thread-name->id fluid-zone-name))
(int-list (map thread-id (get-threads-of-type 'interior))))
(for-each (lambda (id)
(let ((zz (inquire-adjacent-threads id))(id1)(id2))
(set! id1 (car zz))
(set! id2 (cadr zz))
(if (eqv? id1 id2) (if (eqv? id1 id-fz)
(format "n Interior zone "~a" is immersed in fluid zone "~a" n" (thread-id->name id) fluid-zone-name)
)))) int-list))
(format "-------------------------------------------------------------------"))





Show Form
No comments yet. Be the first to add a comment!