Jörg 29 Report post Posted July 21, 2014 Hi together, The pro edition of CAESES comes with a set of algorithms for design exploration and formal optimizations. However, people often already use an external optimization software in their company (such as HEEDS, Isight, modeFrontier, Optimus, optiSLang etc). In this case, one can make use of the batch mode of the CAESES pro edition, in order to automatically generate geometry design variants, using the given optimization tool. I attached a small setup (sweepbatch.zip) which demonstrates how simple this works: sweep.fdbProject file that contains the geometry model along with its design variables.sweep.fscASCII file that controls the batch run. It starts CAESES, sets the values of the design variables and exports an STL file. This fsc-file is the one that needs to be manipulated by the external optimization software, i.e. parameterize the values of the design variables (see the "setValue"-command).run.batRun this file to execute the entire process. The run of sweep.fdb also writes out the number of open edges into a file called "openedges.dat". It is merely a simple check for a closed STL geometry, and this information can be used as well by the optimization tool (geometry validity check). CheersJoerg PS: check out this related post as well. UPDATE AUGUST 2017: The call in the bat/script file needs to be "C:\Program Files (x86)\FRIENDSHIP-SYSTEMS\CAESES\bin\win64\CAESES_crt.exe" sweep.fsc with the newer versions of CAESES (and not CAESES-FFW).sweepbatch.zip Share this post Link to post Share on other sites
Karsten Wenzke 12 Report post Posted October 24, 2014 Hey, I've created based on Jörgs batch mode setup for Windows a setup for Linux. Please follow these steps:Download the zip file open "Runner" with an editor and change the path in line 3 to your CAESES installation director execute the "Runner"Please note that the batch mode of CAESES is not available in the Free Version. Cheers, Karsten Update for CAESES 4.4.x: the name has changed in newer versions, use CAESES_crt now.sweepbatchWindowsAndLinux.zip Share this post Link to post Share on other sites
Guest Mr. YEONUK KANG Report post Posted May 8, 2015 HII have a small question.I use designassmbler sometimes for my optimization. I want to use batch file. forexample design variable (A B C) - ROWS 3 A B C0 0 -10 0 -20 1 0 if I use writesetupintofile other Rows delete automatically. so I don't know how can I make above things. a.setvalue(0)b.setvalue(0)c.setvalue(-1) optiengine.run() a.setvalue(0)b.setvalue(0)c.setvalue(-2) optiengine.run() a.setvalue(0)b.setvalue(1)c.setvalue(0) optiengine.run() Is this right? Share this post Link to post Share on other sites
Jörg 29 Report post Posted May 8, 2015 Hi, The purpose of the method writesetupintofile()is only to provide a starting point for external batch processes. It plots the design variable name into the file, along with the lower and upper bounds, so it is easy to parameterize it with external optimization tools. Currently, it does not give you the logic of the design assembler setup. Your approach from above seems reasonable to me. Does it work like this in your case? Joerg Share this post Link to post Share on other sites
Guest Mr. YEONUK KANG Report post Posted May 8, 2015 // [2.22507e-308,16]|DWL.setValue(14.5) // [2.22507e-308,389]|LBP.setValue(389) // [2.22507e-308,24]|Ta.setValue(24) // [2.22507e-308,24]|Tb.setValue(24) uk.setUseResultPool(false)uk.run() I try above. It is run but make 3 result because uk have 3 rows. so, I want to know how can I change the value in the uk (designassembler). do you know any method? uk.adddesignvalue(14.5 , 385 ,24 ,24) like this. Share this post Link to post Share on other sites
Jörg 29 Report post Posted May 8, 2015 Hi, I have checked with a colleague who did a similar thing some time ago, see the attachment. Unfortunately, it is not so straightforward, it is realized by means of a feature that sets the variable values from a text file. Maybe you can take a look at it, it is not super trivial. So far, this functionality has not been requested that often. We will think about an easier way to do this job and discuss it internally. I hope this helps a bit :-) Joerg sample.zip Share this post Link to post Share on other sites
Mr. Arne Bergmann 27 Report post Posted May 8, 2015 Hi, You don't need to read the values from a file, the feature in that project is just based on the requirement to fill the assembler from a file. The relevant parts of the feature that adds the designvariables (line 20 to 29). That list needs to have the format [[deva, lowerbound, upperbound, active], ...]. So it is basically a list of lists, where each inner list represents one variable. Additionally, it is possible to add single design variables by using the command adddesignvariable(fparameter deva, fdouble lowerbound, fdouble upperbound, fbool active), however note that that command does not do anything if the design variable was already set at the design assembler.The second relevant part is the setting of the values of the variables by using the setvariablevalues command (line 81). That command takes an objectlist of the format [[deva1Value1, deva2Value1, ... ,devaNValue1], [deva1Value2, deva2Value2, ... , devaNValue2], ... ]. So, again it is a list of lists, where each inner list represents the values for all designvariables for one design. Note that the inner lists need to have the same number of values and that number needs to match the number of designvariables that are set at the designassembler. The number of inner lists represents the number of designs that are created in the end. Sorry that the comments in the feature are all in German, but I think with my explanation above, it should be possible to understand the feature. The zip file also contains an fsc script, that, when executed, first runs the feature that sets the values of the variables in the designassembler and then runs the designassembler itself. I hope this helps. Cheers,Arne Share this post Link to post Share on other sites
Guest Mr. YEONUK KANG Report post Posted May 11, 2015 I understand. thanks. I just know all things done by fsc file. If I already setting Design Variables manually. (ex DWL, LBP, T) data is null. so I want to below way. open(sample.fdb) assemble.setVariablevalue([14.5,383,25],[13,383,25],[12,383,25]) // it doesnt work. assemble.setUseResultPool(false)assemble.run() Share this post Link to post Share on other sites
Guest Mr. YEONUK KANG Report post Posted May 11, 2015 assemble.setVariablevalue([[14.5,383,25],[13,383,25],[12,383,25]]) // it's work well . thanks Share this post Link to post Share on other sites
Mr. Carlo Pasquinucci 1 Report post Posted October 8, 2015 Hi together, the project from Joerg is working only with Caeses 3.With the new Caeses 4, you have to change the code inside the run form "C:\Program Files (x86)\FRIENDSHIP-SYSTEMS\CAESES-FFW\bin\win64\CAESES-FFW_crt.exe" sweep.fsc to "C:\programs\CAESES\bin\win64\CAESES_crt.exe" sweep.fsc . Have a nice job with the new version!Carlo Share this post Link to post Share on other sites
Jörg 29 Report post Posted April 2, 2019 CAESES on a Cluster: In order to run CAESES on a Linux cluster, use the batch mode (CAESES_crt). If you would like to start a design engine (design study or optimization) on the cluster, use the following calls within the fsc-file: // ... engine.run() // ... saveProject() close() Share this post Link to post Share on other sites
Nuttarat Vichanphruek 1 Report post Posted May 17, 2022 Hello, Lately, I’ve been trying to run CAESES coupled with StarCCM+ in batch mode for Linux. Checking previous discussions, is it possible to reactivate again for downloading the zip file with the example on how to run CAESES in batch mode? and if you have suggestion please feel free to tell me Thanks in advance, Best, Nuttarat 1 Share this post Link to post Share on other sites