Jump to content

Stefan Wunderlich

Moderators
  • Content Count

    85
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by Stefan Wunderlich


  1. Hi Johannes,

     

    I am afraid, there is currently no inbuild option to optimize for max value.

    I would simpla invert the value of the evaluation (probably in an additional parameter) if I wanted to head for max value (value * -1).

    We should really consider to do this internally and give the user a "clickable" option.

     

    You are right, somehow the documentation for the result pool got lost on the road (not good).

    Using a previous run as result pool means that a design created within the current run that has the same design variable values like a design in the result pool will not be evaluated but only linked to the result pool design in order to reduce computation time.

     

    So it is a recommended option.

     

    I hope that helps.

     

    Cheers,

    Stefan


  2. Hi Hamidreza,

     

    Good that it is working.k

    The increasing file size is understandable, since you added new objects. If the actual increase is reasonable, I cannot say, I would have to take a look at the project. What kind of objects are you adding?

     

    The projectfile is automatically "purged" when saving it, however the "working copy" which is the file with the ~ extension stays the same.

     

    Cheers,

    Stefan


  3. Hi Hamidreza,

     

    First question would be: what is the extent of your model? You set the project units to kilometers (which can be done in the combo box inside the status bar).

    As an explanation: the units are used to set the 3dview extensions to an appropriate size and in some exports like iges will be written inside the header.

    Typically the units are either set to meters or mm depending on the kind of model. Try to change the units and see if that already helps.

     

    There is also a rather hidden option to reset the view: right click on the tab of the 3dview and choose "reset camera" in the context menu.

     

    I hope that helps.

    Cheers,

    Stefan


  4. Hi Wilson,

     

    There are some parts that can be optimized within the feature. Since we do not have an optimizing compiler, each statement has to be executed like it is. So it is a good practice to use temporary variables to simplify the code.

     

    To give you an example:

     

    if (OR(profileExport.at(i):y.toInt() == profileExport.at(i):y, (profileExport.at(i):y.toInt() + 1 - profileExport.at(i):y) > 0.0001))
      |tempCheck.setVector(#(profileExport.at(i)))
    else
      |tempCheck.setVector([#(profileExport.at(i):x), #(profileExport.at(i):y.toInt() + 1), #(profileExport.at(i):z)])
    endif

     

     

    the statement "profileExport.at(i)" has to be executed several times. Putting it in a temporary is a good idea:

     

    FVector3 vec(profileExport.at(i))

     

    if (OR(vec:y.toInt() == vec:y, (vec:y.toInt() + 1 - vec:y) > 0.0001))
      |tempCheck.setVector(vec)
    else
      |tempCheck.setVector([vec:x, vec:y.toInt() + 1, vec:z])
    endif

     

    You could even write:

     

    FVector3 vec(profileExport.at(i))

    double y(vec:y)

     

    if (OR(y.toInt() == y, (y.toInt() + 1 - y) > 0.0001))
      |tempCheck.setVector(vec)
    else
      |tempCheck.setVector([vec:x, y.toInt() + 1, vec:z])
    endif

     

     
    I am confident that you can really speed up the feature by only modifying it in the mentioned way.
     
    If you are interested, check out the blog entry of my college Arne who is diving deeply into the subject of effective feature programming:
     
    Cheers,
    Stefan

  5. Hi Joe,

     

    I have to appologize - I am working with the not yet released 4.0.4. There are some changes concerning triangulation and boolean operations and furtunatley it seems to fix the problems with this project.

     

    We will release 4.0.4 within this week (you will receive an update notification) so I hope this problem will be solved then.

     

    If not, please keep me informed.

     

    Cheers,

    Stefan


  6. Hi Joe,

     

    You did a nice Project here, thanks for sharing.

     

    The Problem I see are the coplanar faces that make the boolean operation difficult and may lead to problems.

    You can see the warning sign after the boolean operation which may lead to problems with further operations.

     

    In this project it is easy to fix: just shorten the cylinder (what I did) or extend the teeth to avoid coplanarity where possible.

     

    I attached the modified project.

     

    Keep on the good work.

     

    Cheers,

    Stefan

     

     

    ErrorSample.fdbc


  7. Hi Edan,

     

    I created a simple example where I use a curveIntersectionPoint to calculate the shortest distance between two curves.

    There are probably a hundred other methodes to do that but this one felt natural for me.

     

    Anyway, the sobol itself is just doing his thing so it will create invalid variants. But if you do not want a computation running in designs with overlapping curves, you can set a constraint at the computation so it will only run if the constraint is valid.

     

    I hope that helps.

     

    Cheers,

    Stefan

    distanceBetweenCurves.fdb


  8. Hi Fleur,

     

    Do you apply the transformation on the patches or on the original sections?

     

    If you are "only" interested in the hydrostatics, transforming the original sections would be my preferred method.

    It should give stable and fast results.

     

    I attached a modified sample.

     

    If you can somehow reproduce the crash with less sensitive data, I still would like to look into that.

     

    Cheers,

    Stefan

    63_Lackenby_Hull_Variation.fdb


  9. Hi Oliver,

     

    Beside features, there is an option to execute script-files within CAESES (File->Execute Script).

    A script is simply a sequence of commands you could also write in the console that will be executed one after each other.

     

    So the idea is to setup the project, containing a feature like the one I posted and the two design engines and additionally create a script-file with a sequence of commands similar to Claus last posting.

    Then you simply execute the script which then triggers the first design engine, after that determines the best design and uses this as base for the second design engine.

     

    Concerning 4.0, we are (hopefully) talking about weeks ;)

     

    Cheers,

    Stefan


  10. Hi Oliver,

     

    Thank you for your input.

     

    Currently, there is no way to put the generation in the design name template. Only the documented variables can be used.

     

    - We did a lot on the optimization part In the 4.0 version of CAESES, which will be released soon.

     

    - We added graphs to give an overview of the progress of the optimization as well as regressions and influences in real time (while the engine is running)

     

    - There will be also a DAKOTA integration, which will allow you to use the algorithms available within DAKOTA inside CAESES.

     

    We are also working on ideas like detecting the best design(s) after an optimization and more, but these will be available at a later stage.

     

    Cheers,

    Stefan


  11. Hi Dafni,

     

    Basically, breps are trimmed surfaces - they would not fit in a surface group.

    Anyway, you can create section (with the help of a section group) with mixed input of breps and surfaces.

     

    Do you need basic transformations (like translation / rotation) or shift transformations? Basic transformations can simply be applied to breps (general -> transformation) and imagesurfaces.

     

    If you need shift transformations (like a delta shift), I would rather transform the generatiod sections (with the help of an imageoffsetgroup). Shifting a brep is currently considered as experimental, since it is time consuming and might sometimes even fail.

     

    If you have an example geometry, I could take a look to give you an idea of the process.

     

    Cheers,

    Stefan


  12. Hi Oliver,

     

    I need to understand, how the export is triggered.

    Typically, the export should be triggered when the other input files are written. So there should be a connection to the software connector to make that happen.

     

    This can be a bit tricky when using a feature so we will come up with a simple solution in the next release.

     

    Could you attach your project file (even with stripped geometry, if it is somehow confidential)? Then I can take a look at it and come up with a suggestion of how to solve this.

     

    Cheers,

    Stefan


  13. Hi Kevin,

     

    Yes, this is a typical usecase for CAESES.

    The optimization process would have to be done manually in the free version - automatic optimization would require a full version (either a commercial or academic license).

     

    However, CAESES does not contain any simulation code but can be easily coupled to a simulation tool of your choice. The simulation will then be triggered out of CAESES (manually or within an optimization process). 

     

    Cheers,

    Stefan


  14. Hi Dimitrios,

     

    Thanks for the report. This issue is fixed. The Fix will be included in the next minor release (3.1.2).

     

    In the meantime, you might work around this issue by not using polysurfaces as source for sectiongroups or breps but use the source surfaces instead.

     

    Cheers,

    Stefan 


  15. Hi Brendan,

     

    I can postprocess damBreak without problems on my windows machine (check on Linux later and come back to you).

     

    In general (not being an openfoam expert) my understanding is to open only the .foam / .openfoam file (also on paraview). This worked on all cases I had beside of the one you sent. You might consider to ask in an OpenFOAM forum why the first file gives errors in Paraview (when opening the .openfoam file).

     

    As a sidenote: it probably won't help installing a different Linux flavour since the problem is most likely not os related.

     

    Cheers,

    Stefan

×
×
  • Create New...