CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Fluent UDF and Scheme Programming (https://www.cfd-online.com/Forums/fluent-udf/)
-   -   Problem on succesive simulation runs and dpm file naming (https://www.cfd-online.com/Forums/fluent-udf/241856-problem-succesive-simulation-runs-dpm-file-naming.html)

fatihgulec March 23, 2022 11:06

Problem on succesive simulation runs and dpm file naming
 
I try to run a transient particle simulation and sample particles at the outlet several times with a journal file as given below in Fluent. My final aim is to have several sample files (.dpm) at the end. To this end, I used the do-loop but I couldn't make it work. However, without using the do function, the code works fine for one simulation run.

I have two questions:

1) How can I make this code work? When I run this code, first I get the warning "Warning: An error or interrupt occurred while reading the journal file. Some commands may not have been completed." on Fluent GUI and then "Error: eof inside list, Error Object: ()" in the console.

2) I want to change the dpm sample file which is generated automatically by Fluent, when I run the "/report/dpm-sample" command in the last row. How can I change the file name for each trial in the loop below? For example: outlet_1.dpm, outlet_2.dpm etc.,.. I looked through the TUI command list, but the commands to write a file are related with data case files.

Thank you in advance,

Journal File:

Code:

(define numbOfIterations 2); Define number of max. iterations per time step

(define delta_t 0.06); Define time step size [s]

(define no_t_s 2); Number of time steps

(do ((x1 1 (+ x1 1))) ((> x1 3)) ; define count - variable , start value and increment, define stop condition

/solve/initialize/initialize-flow y y ; do the Initialization, y y to discard the old data and clear history

/report/dpm-sample injection-0 injection-1 () outlet () () n n ; start sampling

/solve/set/time-step delta_t ; set the time step

/solve/dual-time-iterate no_t_s numbOfIterations; Perform unsteady iterations for a specified number of time steps

/report/dpm-sample );


AlexanderZ March 31, 2022 22:36

you have typo, you forgot bracket after do
Code:

(do ((x1 1 (+ x1 1))) ((> x1 3))
(
code
)

personally I recommend you to use following format
Code:

(ti-menu-load-string (format #f "TUI COMMAND HERE"))
in that case all variables inside must be changed with ~a
example
Code:

(ti-menu-load-string (format #f "solve/set/time-step ~a" delta_t))

fatihgulec April 4, 2022 12:19

Quote:

Originally Posted by AlexanderZ (Post 825251)
you have typo, you forgot bracket after do
Code:

(do ((x1 1 (+ x1 1))) ((> x1 3))
(
code
)

personally I recommend you to use following format
Code:

(ti-menu-load-string (format #f "TUI COMMAND HERE"))
in that case all variables inside must be changed with ~a
example
Code:

(ti-menu-load-string (format #f "solve/set/time-step ~a" delta_t))

Thank you for your answer. I added the parentheses for do but nothing changed. Should I use a scheme file instead of journal maybe?

AlexanderZ April 5, 2022 01:50

show code you are using, and log with errors

fatihgulec April 5, 2022 08:08

Quote:

Originally Posted by AlexanderZ (Post 825492)
show code you are using, and log with errors

The problem was not about the parantheses but about the commands in the do loop. So, I used the structure as you suggested (given below) and it works perfectly now. Thank you so much!

Code:

(define numbOfIterations 100); Define number of max. iterations per time step
(define delta_t 0.06); Define time step size [s]
(define no_t_s 150); Number of time steps
(define no_trial 50); Number of trials


(do ((x1 1 (+ x1 1))) ((> x1 no_trial))
        (ti-menu-load-string (format #f "/solve/initialize/initialize-flow y y")) ;Initialization, y y to discard the old data and clear history
        (ti-menu-load-string (format #f "/report/dpm-sample injection-0 injection-1 () outlet () () y n")) ; start sampling
        (ti-menu-load-string (format #f "/solve/set/time-step delta_t")) ; set the time step
        (ti-menu-load-string (format #f "/solve/dual-time-iterate no_t_s numbOfIterations")); Perform unsteady iterations for a specified number of time steps
        (ti-menu-load-string (format #f "/report/dpm-sample")); stop sampling
        ( display x1)
)

But my second problem about dpm file naming still continues. I want to change the dpm sample file which is generated automatically by Fluent, when I run the "/report/dpm-sample" command in the last row. How can I change the file name for each trial in the loop below? For example: outlet_1.dpm, outlet_2.dpm etc.,.. I looked through the TUI command list, but the commands to write a file are related with data case files.


All times are GMT -4. The time now is 06:28.