plotting transiente results
Hi
I have a bit of a problem figuring out how I can get the results from a transient simulation out of CFX 5.5.1. What I would like is a time serie of the velocity in a point - preferable in a text format for import in a spreadsheet. 1) I have saved the results for each timestep for my velocity: This results in 555 files: 1.trn 2.trn,..... However The files are binary and I dont know which program can read them - POST will not accept the format - only for animation. 2) I looked at the export facility in the solvermanager. However, The form is not fixed in my windows version - so it is impossible to select the resultfile. - Besides I'm not sure that the formats possible can be used ? (as mentioned above, I would like a simple textfile I can import into a speadsheet or similar) 3) I also looked to set up a monitor in the solver manager - but that is only possible at a patch (e.g inlet) - and not for the velocity at a point. Is there a workaround - or have I simply overlooked a facility ? Regards Michael |
Re: plotting transiente results
Hi Michael
1) the only way to extract point data would be to go though at the data file for your simulation. 2) a better way would be to setup monitor point in your simulation, creat a ccl-file with your monitor point and includé it in your simulation. 3) after the simulation has finish, you can write out the data using cfx5dfile -read-monitor file.res > file.mon 4) the file.mon can then be read into a spreadsheet. Regards Jens |
Re: plotting transiente results
Hi Michael, Jens is right. ideally you would use the monitor point option and then the dfile command.
If you don't want to re run your job you could write some perl to extract you data from post. It will take a little time to run but its still possible. Create a point in post, then export the velocity using that point as a locator. As for the perl (cfx call it power syntax) I'm not 100% sure as what to put, but I'm sure it wouldn't take much to work out. Start by recording a session file to load a time step and then export the data. Then look at combining some perl into your session file to automate it. good luck Bob |
Re: plotting transiente results
Actually monitor points are only possible on points, i.e. at a cartesian coordiate <x,y,z>. What gives you the impression this is only possible on a patch (inlet or otherwise)?
At any rate you should be able to use a monitor point to get the data you need. set up a graph in the solver monitor which plots your monitor point data and then use the "right click"->"export data" option to get a spreadsheet friendly version. Neale |
Re: plotting transiente results
Hi everybody
I have tried the suggestions from Jens and Bob - and I now have a working routine for extracting the data - Thanks In the response to the question from Neale - Well I'm not sure - but it seems that when I select the monitor - only patches appears in the list - and only variables such as pressure and Momentum. After inserting a point (and which data I want) via the ccl approach - suggested by jens - this point appears as an user monitor point which can be selected and plotted. Then I can use Neals suggestion by right-clicking at the monitor in the solver manager and saving the data. Anyway - I wish that extracting data as time series in comming versions of the program will be a more straight forward procedure in the postprocessor - all the nessesary data are available - as they are used in the animation facility!. It would also be nice if the user points could be defined in for example in Build. - Im sure that the Guy's and Girls at AEA are working day and night at this problem ;-) Thanks and Regards Michael |
Re: plotting transiente results
<html>If you want to extract data from a point specified within Post after you have made your transient calculation, this script will work
Create a point in Post, named Point 1, where you want to monitor your transient behaviour. Create a file, named mysession.cse containing the following !open (OUTFILE, ">myData.dat"); !print OUTFILE "Timestep, Velocity U, Velocity V at Point 1 \n"; !for ($i=30; $i<=234; $i++) { DATA READER:DATA READER Current Timestep = $i END > load !($Uvel, $units) = evaluate('probe(Velocity u)@Point 1'); !($Vvel, $units) = evaluate('probe(Velocity v)@Point 1'); !print OUTFILE "$i , $Uvel , $Vvel \n"; !} !close OUTFILE; Play the file within Post from the menu Session/Play Session, and you are done! Change the Timestep range and other variables for personal behaviour. Cheers Michael Bo </html> |
All times are GMT -4. The time now is 22:10. |