Jump to content

robertavarela

Members
  • Content Count

    65
  • Joined

  • Last visited

  • Days Won

    8

Reputation Activity

  1. robertavarela liked a post in a topic by João Marabisa in Shock Response Spectrum (SRS) curve   
    Hello everyone,   Regarding some Shock's analysis demands, I've decided to facilitate and automate (using Activate) the task to obtain the expected Shock Response Spectrum curve as below:     This model will be very useful for those who are intending to do some Shock's analysis, even a linear approximation using the amplification factor on a certain frequency, as a Response Spectrum covering all the frequency domain.   Basically the inputs are the Half-sine and System properties: Sine: Magnitude, period, phase. System: Mass, damping, stiffness.   After set them, you'll just have to click 'Run' and then 'Execute'. Besides the traditional plots (Acceleration (G) vs. Frequency (Hz)) you will already have the 'TABLED1.fem' to be used on OptiStruct, as can be seen in this video.   Thanks for @robertavarela, @RoKet and @Adriano Koga for some tips regarding the modeling.   Hope this be very useful for you all! Please, let me know if you have any question about this model (attached).   João. Srs_curve_model.zip
  2. Adriano A. Koga liked a post in a topic by robertavarela in Get installation directory path   
    Deb,
     
    In Compose v2020, you can use composedir function and in previous versions you can use getenv('ALTAIR_HOME') to get the environment variable that points to Compose installation folder.

    Regards,
     
    Roberta
  3. Debdatta Sen liked a post in a topic by robertavarela in Get installation directory path   
    Deb,
     
    In Compose v2020, you can use composedir function and in previous versions you can use getenv('ALTAIR_HOME') to get the environment variable that points to Compose installation folder.

    Regards,
     
    Roberta
  4. Adriano Koga liked a post in a topic by robertavarela in Reuse legacy data / matrix-based scripts in Compose   
    Hello all,
     
    As you already know, OML (Open Matrix Language) has a syntax compatible with other matrix-based languages, such as Octave. This compatibility leverages both the reuse of legacy data and syntax knowledge of these other softwares. It means that it’s possible to have a non-disruptive adoption of Compose and it can coexist with existing Math tools.
     
    Please find attached a video explaining the main differences that you may encounter when trying to use your past scripts in Compose and how to overcome them.
     
    Regards,
     
    Roberta
    LegacyData_AltairCompose.mp4
  5. João Marabisa liked a post in a topic by robertavarela in Reuse legacy data / matrix-based scripts in Compose   
    Hello all,
     
    As you already know, OML (Open Matrix Language) has a syntax compatible with other matrix-based languages, such as Octave. This compatibility leverages both the reuse of legacy data and syntax knowledge of these other softwares. It means that it’s possible to have a non-disruptive adoption of Compose and it can coexist with existing Math tools.
     
    Please find attached a video explaining the main differences that you may encounter when trying to use your past scripts in Compose and how to overcome them.
     
    Regards,
     
    Roberta
    LegacyData_AltairCompose.mp4
  6. João Marabisa liked a post in a topic by robertavarela in Read M, K and C matrices and compute energy of each DOF   
    Based on the same script, @Kosuke IKEDA created an example connecting OptiStruct Activate, where K, M and C matrices were converted from OS to ABCD matrices (state-space system):

    Which may be imported in Activate then.
     
    The impulse response results match OS transient:

    Regards,
     
    Roberta
    hm_plate_cms_AX.pch io_def.txt stc_DMIGPCH2ABCD_rev1.oml
  7. Adriano A. Koga liked a post in a topic by robertavarela in Read M, K and C matrices and compute energy of each DOF   
    Based on the same script, @Kosuke IKEDA created an example connecting OptiStruct Activate, where K, M and C matrices were converted from OS to ABCD matrices (state-space system):

    Which may be imported in Activate then.
     
    The impulse response results match OS transient:

    Regards,
     
    Roberta
    hm_plate_cms_AX.pch io_def.txt stc_DMIGPCH2ABCD_rev1.oml
  8. robertavarela liked a post in a topic by Sri in Python Bridge - 2D Lists from Python cannot be read back into OML   
    Workaround: 
     
    In Python:
         list2=[(1,1),(2,2),(3,3)]
         list3 = [list(child) for child in list2]
     
    In  OML:
       getpythonvar('list3')
  9. robertavarela liked a post in a topic by NilsWaap in Using a gamepad in Compose using the python bridge.   
    Hello community,
    I want to share some code that will help you to use a gamepad/joystick in compose.
     
    I created an OML-class that represents the controller. I will provide you with more informations, documents and updates soon.
     
    To make the code work, you need to install the XInput-Python interface:
    https://pypi.org/project/XInput-Python/
     
    In the topic below, there are instructions how to install python modules in compose:
     
     
    regards
     
    Nils
     
    vrjoystick.zip
  10. Debdatta Sen liked a post in a topic by robertavarela in Python Bridge - 2D Lists from Python cannot be read back into OML   
    In this case, you'd need to use list function again in those tuples inside the list:
    l[0] = list(l[0])
    Which would generate this variable:
    [['my', 'name'], 'is', 'mr', 'tuple']
    With getpythonvar, the output would be a cell within a cell:

    Regards,
    Roberta
  11. robertavarela liked a post in a topic by João Marabisa in Ball & Beam System   
    Hi techs! I've created a Ball & Beam model on MotionView to explore a co-simulation with Activate.
     
    Many of you may have seen this on undergraduate/master class studying on frequency or even on time domain. I've decided to do something different, creating the model on a multibody environment. 
     
    The control is a simple PD, where I've calculated using analytical method (Kp +Kd.s) with a specified overshoot and settling time. You could explore changing its values...
    I'd like to thank @Livio Mariano for suggesting me his own low-pass filter  in a way to filter the input displacement signal (without it I was having a problem to converge).
     
    I've created a short video to show you how it works, and the files are attached. Enjoy! 
     
    João.
     
    Ball_&_beam.zip
     
  12. robertavarela liked a post in a topic by Adriano A. Koga in 99 lines of topoly optimization   
    Hi everyone,
     
    i'd like to share a script slightly modified, based on the very famous 99lines topology optimization script from Ole Sigmund group (http://www.topopt.mek.dtu.dk/).
    It brings a topology optimization problem, for miminize compliance, while keeping a limited volume fraction of material. It is a bi-supported beam example.
    This runs fine in Compose 2019..3+ I believe.
     
    Just load the .oml file, and run the script.
    Then for execution type a few parameters while calling the 'top' function.
     
    top(20,10,0.5,3.0,1.5)
    top(numb elems in x, numb elems y, volume fraction, penalization , minimum radius filter)
     

    99lines_modified.oml
  13. valdir liked a post in a topic by robertavarela in Digitize plots in images   
    Hello all,
     
    I wanted to share with you a tool to digitize plots in images using OML and Python. The aim is to convert plots that are introduced in text books like Analysis and Design of Flight Vehicle Structures (Bruhn, 1973):

    Such plots are commonly used in industries like Aerospace to calculate constants and other parameters that assess Margins of Safety of components and systems. Finally, we can do a polynomial curve fitting to use these curves and compute these constants without the need to look at the plots everytime they must be applied.
     
    The steps of the attached scripts are:
    1) Give the axes bounds, degree of polynomial curve fitting and image whose plot will be digitized
    2) Hit Start in the OML script (it will automatically call the Python script)
    3) Give a first click with the mouse button to start selecting the corners of the plot
    4) Select the corners

    5) Give another click to select the points
    6) Select as many points as you want

    7) Double click with any key to finish the selection
    8) Plot is generated and polynomial coefficients are computed and printed

     
    Regards,
     
    Roberta
    PlotDigitizer.oml ginput_plot.py
  14. valdir liked a post in a topic by robertavarela in Read M, K and C matrices and compute energy of each DOF   
    Hello, community.
     
    @Kosuke IKEDA and I recently worked on a DMIGPCH reader for OML. It is an output file from OptiStruct with reduced M (mass), K (stiffness) and C (damping) matrices that can be fed into external data files to be used in subsequent analyses.
     
    These are ASCII files whose tags MAAX, KAAX and BAAX identify what is data from mass, stiffness and damping, respectively:

    Each value represents the nodal real value of the matrix. With it, it's possible to compute the eigen values and energy distribution of each degree of freedom.

    Regards,
     
    Roberta
    stc_readDMIGPCH_rev3.oml forum_sample_AX.pch
  15. robertavarela liked a post in a topic by christiankeh in Digitize plots in images   
    This is absolutely awesome, Roberta!
    Thank you for sharing!
     
    Best
    Christian
  16. stmaster liked a post in a topic by robertavarela in Digitize plots in images   
    Hello all,
     
    I wanted to share with you a tool to digitize plots in images using OML and Python. The aim is to convert plots that are introduced in text books like Analysis and Design of Flight Vehicle Structures (Bruhn, 1973):

    Such plots are commonly used in industries like Aerospace to calculate constants and other parameters that assess Margins of Safety of components and systems. Finally, we can do a polynomial curve fitting to use these curves and compute these constants without the need to look at the plots everytime they must be applied.
     
    The steps of the attached scripts are:
    1) Give the axes bounds, degree of polynomial curve fitting and image whose plot will be digitized
    2) Hit Start in the OML script (it will automatically call the Python script)
    3) Give a first click with the mouse button to start selecting the corners of the plot
    4) Select the corners

    5) Give another click to select the points
    6) Select as many points as you want

    7) Double click with any key to finish the selection
    8) Plot is generated and polynomial coefficients are computed and printed

     
    Regards,
     
    Roberta
    PlotDigitizer.oml ginput_plot.py
  17. robertavarela liked a post in a topic by Manoj Kandukuri in readmultvector, readcae: why are they 2?   
    There are multiple commands to extract CAE/Test data file in Compose OML. of which, readmultvectors, readcae commands extracts results of specific input arguments given by the user. 
    I had multiple requests from users asking, as these 2 functions serve the same purpose then whats the difference between readmultvector & readcae? Which one do we use and when?
     
    As an engineer myself, I tried to break it down based on 2 key factors below:
    1. Syntax differences (Ease of Use)
    2. Speed/Performance
     
    Attached is the paper i wrote about the same with example.
     
    Hope this helps users to pick the right command for their tasks.
     
    Happy coding!!
     
    Thanks,
    Manoj kandukuri
     
     
    readmultvector_readcae_why_are_they_2.pdf
  18. robertavarela liked a post in a topic by L Moretti in FREE Altair Compose Notebook: An Introduction to System Dynamics and Controls using Altair Compose   
    FREE Altair Compose Notebook:
    An Introduction to System Dynamics and Controls using Altair Compose (Click Here)
     

     
     
    WHAT IS ALTAIR COMPOSE NOTEBOOK?
    The Altair Compose Notebook is an environment where you can develop interactive documents, mixing text, pictures, equations, and editable scripts.
    ·        For Academia: an application to make teaching more efficient and fun
    ·        For Professional: a tool to create interactive document that you can share across your organization
    ·        For Everyone: an environment to develop and present your projects
     
    WHAT WILL YOU LEARN FROM THIS NOTEBOOK?
    In this first notebook we talk about System Dynamics and Controls. Our aim is to provide you with all the basic knowledge you will need to work on your projects or deepen your studies.
    We will cover:
            1.    System Dynamics
           2.    Continuous Dynamics
                  2.1.   System Analysis
                  2.2.   Control Theory
           3.    Discrete Dynamics
     
    The theoretical explanation will be integrated by practical examples and applications, that will be developed leveraging Compose built-in functions (in particular the ControlSystem Library).
     
    MORE RESOURCES
     Also a .pdf version is available. CLICK HERE to download the E-book: An Introduction to System Dynamics and Controls using Altair Compose
  19. João Marabisa liked a post in a topic by robertavarela in Digitize plots in images   
    Hello all,
     
    I wanted to share with you a tool to digitize plots in images using OML and Python. The aim is to convert plots that are introduced in text books like Analysis and Design of Flight Vehicle Structures (Bruhn, 1973):

    Such plots are commonly used in industries like Aerospace to calculate constants and other parameters that assess Margins of Safety of components and systems. Finally, we can do a polynomial curve fitting to use these curves and compute these constants without the need to look at the plots everytime they must be applied.
     
    The steps of the attached scripts are:
    1) Give the axes bounds, degree of polynomial curve fitting and image whose plot will be digitized
    2) Hit Start in the OML script (it will automatically call the Python script)
    3) Give a first click with the mouse button to start selecting the corners of the plot
    4) Select the corners

    5) Give another click to select the points
    6) Select as many points as you want

    7) Double click with any key to finish the selection
    8) Plot is generated and polynomial coefficients are computed and printed

     
    Regards,
     
    Roberta
    PlotDigitizer.oml ginput_plot.py
  20. robertavarela liked a post in a topic by RokHodnik in Compose - Flux coupling   
    Hello robertavarela and L Moretti,
     
    thank you very much both. Will try the suggestions in the upcoming week.
     
    Regards, 
    Rok
  21. RokHodnik liked a post in a topic by robertavarela in Compose - Flux coupling   
    Rok,
     
    The most appropriate coupling in this case would be with Activate, our system simulation tool that allows co-simulation with Flux. One example can be seen here at
    Regards,
     
    Roberta
     
     
  22. RokHodnik liked a post in a topic by robertavarela in Compose - Flux coupling   
    Rok,
     
    I see now what you mean. I suggest the following steps then:
    1) Use Compose and its OML Math functions to create whatever inputs you need in Flux: as Flux has a native interface with Python, these arguments could be simply written in a .py file that can be loaded in Flux
     
    2) Create a batch file in Compose calling Flux and passing these parameters: the executable is located at C:\Program Files\Altair\<your_version>\flux\Flux and you can pass a .py file as an extra argument

     
    3) Post-process the results once the simulation is finished using Compose: Flux may output .h3d format that is natively understood by Compose with functions such as readcae. If you have questions about how to import the results, you can load your .h3d file in readvectorbuilder and see how the entities were written:

    With this, you drastically reduce the post-processing time by loading all relevant information with just a few commands.
     
    Regards,
     
    Roberta
  23. robertavarela liked a post in a topic by NilsWaap in Create a sphere in compose   
    Hello community,
     
    for a project I needed a function that creates a sphere.
    Since there is no such function in the library I just want to share my function with you.
     

     
     
    best regards
     
    Nils
     
     
     
    sphere.7z
  24. robertavarela liked a post in a topic by Aiko in Problem with MathExpressionBlock   
    Thanks, it works now!
     
    Regards,
    Aiko
  25. robertavarela liked a post in a topic by Joao in Integration of Compose and Optistruct for optimization processes   
    I actually figured it out, thank you so much.
     
    If anyone is interested, I only created the equation using DEQATN and then created DVMREL2 and called the equation and design variable ID in it.
     
    All the process is done directly in the .fem file.
×
×
  • Create New...