Eigenvalue along normal direction of surfaces

Karl_20381
Karl_20381 Altair Community Member
edited October 2020 in Community Q&A

Hi,

 

I performed a modal analysis on a train gearbox with complex geometry, I obtain values for 170 000 nodes and I need to see or export eigen values of nodes along normal direction of their local surfaces. I saw in contour panel that it possible to display the magnitude or values along of x, y  and z axis, but, I would like know if it's possible to display values (like eigen value or displacement) along normal direction of surfaces in HyperView ? Or a solution (like a local system for each node) before the computation with optistruct to display values along normal direction in HV ?

 

BR,

 

Karl

Tagged:

Answers

  • Rahul Rajan_21763
    Rahul Rajan_21763 New Altair Community Member
    edited January 2018

    Please check with  user defined local coordinate system option.Refer below post for same.

     

  • Karl_20381
    Karl_20381 Altair Community Member
    edited February 2018

    ok, but how can I make 170 000 different local coordinate systems, 1 per node, where one of three axis is the local normal vector ? I need to extract values along normal vectors for each node of my gearbox' housing. If it's not possible in HV or HM. How can I extract normal vector's coordinates for each node ?

  • Rahul Rajan_21763
    Rahul Rajan_21763 New Altair Community Member
    edited February 2018

    Did you check vector option in HyperView for your case.

    <?xml version="1.0" encoding="UTF-8"?>Vectors.JPG

  • Karl_20381
    Karl_20381 Altair Community Member
    edited February 2018

    Yes I checked. But it plot vectors in function of its global system (see 'My_housing.jpg'). I would like something like my first picture called 'Normal.jpg'.

     

    BR

    Karl

    <?xml version="1.0" encoding="UTF-8"?>Normal.jpg

    <?xml version="1.0" encoding="UTF-8"?>My_housing.jpg

  • QuyNguyenDai
    QuyNguyenDai Altair Community Member
    edited February 2018

    ok, but how can I make 170 000 different local coordinate systems, 1 per node, where one of three axis is the local normal vector ? I need to extract values along normal vectors for each node of my gearbox' housing. If it's not possible in HV or HM. How can I extract normal vector's coordinates for each node ?

     

    One local system for each node? Wow !!!

    How you can build the 'local normal vector'? normal to what? You're speaking about NODES, not ELEMENTS.

  • Karl_20381
    Karl_20381 Altair Community Member
    edited February 2018

    Yes I know that I'm speaking about nodes... and a node it's not a surface ... but values are define at nodes ...

     

    Normal to what ? As I said in my first message ' their local surfaces ', It's not possible ? I don't know ... maybe it's possible to use the nearest element normal vector ? Or a mean of nearest element normal vector? To do my computation I need each value along its nearest normal vector...

     

    So, there is a mean to extract values along normal vector of local surfaces ?

  • Rahul Rajan_21763
    Rahul Rajan_21763 New Altair Community Member
    edited February 2018

    I will check internally if it is possible to export eigen values of nodes along normal direction of their local surfaces in HyperView. I also want to know the end objective of this requirement.Please do let us know about same.

  • Rahul Rajan_21763
    Rahul Rajan_21763 New Altair Community Member
    edited February 2018

    To get a projection of Displacement to a face normal create the following expression:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),'Displacement')

    For crash models:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),('Coordinates'-'LC0F1.Coordinates'))

    Make sure you use 'Advanced' result math template when loading results.
     

  • Karl_20381
    Karl_20381 Altair Community Member
    edited February 2018

    I work on the acoustic optimization of gearboxes. I will do some measure in few months. I need to determine an optimal placement of my sensors to see my modal shapes. My sensors are 1D accelerometers (normal direction).  To compute a good placement of my sensors I need a matrix (lines: modal basis; columns: my nodes) and the values in this matrix are the Eigen value along normal direction (because I have 1D accelerometers). With this matrix I can do a QR decomposition or a Monte Carlo method (where I select the smaller conditioning of the computed sub-matrix) to determine a good placement.

     

    Also I need these Eigen values to do a spectral iterative computation to get the dynamic response of my gearbox where I take account the non-linearity of my excitatory effort, transmission error, etc.

     

    To get a projection of Displacement to a face normal create the following expression:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),'Displacement')

    For crash models:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),('Coordinates'-'LC0F1.Coordinates'))

    Make sure you use 'Advanced' result math template when loading results.
     

     

    Ok thank you :)/emoticons/default_smile.png' srcset='/emoticons/smile@2x.png 2x' title=':)' width='20' /> I will try this week

     

    BR

    Karl

  • Karl_20381
    Karl_20381 Altair Community Member
    edited February 2018

    To get a projection of Displacement to a face normal create the following expression:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),'Displacement')

    For crash models:

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','LC0F1.Coordinates','Bisect'),'avg','LC0F1.Elements'),('Coordinates'-'LC0F1.Coordinates'))

    Make sure you use 'Advanced' result math template when loading results.
     

     

    Thank you for your help. But your expression doesn't work. I take time to understand how work the builder expression (from 'Derived Results') and I did some corrections :

    Dot(BCElemToNode(ElementAxisVector('0.0 0.0 1.0','LC0F1.Elements','R1.LC0F1.V1','Bisect'),'avg','LC0F1.Elements'),'R1.V2')

    R1.LC0F1.V1 : Coordinates

    R1.V2 : Eigen mode

     

    BR

    Karl

  • Rahul Rajan_21763
    Rahul Rajan_21763 New Altair Community Member
    edited February 2018

    Thanks for the update.