Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add analysis to the 6dof model #1034

Closed
7 tasks done
raphaeltimbo opened this issue Mar 14, 2024 · 2 comments
Closed
7 tasks done

Add analysis to the 6dof model #1034

raphaeltimbo opened this issue Mar 14, 2024 · 2 comments
Assignees
Labels
good first issue Good for newcomers stale Issues with no activity for a long period

Comments

@raphaeltimbo
Copy link
Collaborator

raphaeltimbo commented Mar 14, 2024

Create tests for 6dof:

  • Static analysis
  • Modal analysis
  • Campbell Diagram
  • Undamped Critical Speed Map
  • Frequency response
  • Unbalance response
  • Time response
@jguarato
Copy link
Contributor

jguarato commented Mar 21, 2024

Before creating specific tests for the 6 dof model, I decided to conduct the same analyses performed in the ROSS tutorial. To accomplish this, I took the 4 dof model from the tutorial and converted it to the 6 dof model, as demonstrated in the code snippet below:

rotor_model = rotor3

shaft_elements_lenght = rotor_model.shaft_elements
shaft_elem = [
    rs.ShaftElement6DoF(
        material=rotor_model.shaft_elements[l].material,
        L=rotor_model.shaft_elements[l].L,
        n=rotor_model.shaft_elements[l].n,
        idl=rotor_model.shaft_elements[l].idl,
        odl=rotor_model.shaft_elements[l].odl,
        idr=rotor_model.shaft_elements[l].idr,
        odr=rotor_model.shaft_elements[l].odr,
    )
    for l, p in enumerate(shaft_elements_lenght)
]

disk_elem = [
    rs.DiskElement6DoF(
        n=rotor_model.disk_elements[l].n,
        m=rotor_model.disk_elements[l].m,
        Id=rotor_model.disk_elements[l].Id,
        Ip=rotor_model.disk_elements[l].Ip,
    )
    for l in range(len(rotor_model.disk_elements))
]

bearing_elem = [
    rs.BearingElement6DoF(
        n=rotor_model.bearing_elements[l].n,
        kxx=rotor_model.bearing_elements[l].kxx,
        kyy=rotor_model.bearing_elements[l].kyy,
        cxx=rotor_model.bearing_elements[l].cxx,
        cyy=rotor_model.bearing_elements[l].cyy,
        kxy=rotor_model.bearing_elements[l].kxy,
        kyx=rotor_model.bearing_elements[l].kyx,
        cxy=rotor_model.bearing_elements[l].cxy,
        cyx=rotor_model.bearing_elements[l].cyx,
        frequency=rotor_model.bearing_elements[l].frequency,
    )
    for l in range(len(rotor_model.bearing_elements))
]

rotor3 = rs.Rotor(shaft_elem, disk_elem, bearing_elem)

@ViniciusTxc3 ViniciusTxc3 added the good first issue Good for newcomers label Mar 26, 2024
@ross-bott ross-bott added the stale Issues with no activity for a long period label May 20, 2024
@jguarato
Copy link
Contributor

Hi @raphaeltimbo!

I was thinking about this issue and had doubts. I'm unsure whether I would have to create analyzes to be included in the documentation, or whether I would have to create quick tests to be run with pytest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers stale Issues with no activity for a long period
Projects
None yet
Development

No branches or pull requests

4 participants