Local coordinate sy...
 
Notifications
Clear all

Local coordinate system reconstruction from global results

18 Posts
3 Users
1 Reactions
4,579 Views
Posts: 4
Topic starter
(@ghillo)
Barista
Joined: 5 years ago

Hi,

I have a problem related to the interpretation of a set of ls-dyna results provided by an external consultant.

The FE analysis is based on a model made of 3D solid elements (ELFORM=-1) and has a set of loads applied in time that is representative of the actual loads acting on the structure.

My problem is related to the application of a particular fatigue criterion that requires the strain tensor definition in two different system configurations (times) that correspond to the beginning and the end of a typical fatigue cycle.

The application of the fatigue criterion requires the strain tensor to be defined in both the configurations with respect to an element local coordinate system in order to neglect the translations and the rotations of the elements between the two configurations and to consider their actual distorsion/deformation only.

Unfortunately, in the set of results that I have, the strains are only defined with respect to the global coordinate system. I certainly have the association of each element with its nodes and the position of the nodes themselves so the translation and the rotation of the elements can be computed. My problem is that this local coordinate system of the element can be defined in infinite ways and the way it is defined is going to influence the final results.

Any suggestions on how to best define the local coordinate system with respect to the nodes (I have not found any hint on the theory manual). Alternatively is there an authomatic way to translate the results from global to local?

Thank you in advance!

Pietro Ghillani

17 Replies




Negative Volume
Posts: 668
Admin
(@negativevolume)
CEO
Joined: 6 years ago

Hi @ghillo, thanks for the great question!

This is a fairly complex question and may require some time to solve fully. So you want to get strain response in the local coordinate system of the elements. One thing that will be critical is the *Material of the part in particular. Just the *MAT title will be enough. Only certain materials have the ability to do what you are looking for. Could you also tell me if the elements of this part are defined as *Element_solid or *Element_solid_ortho? The latter option allows you to sort of hard-code in a local coordinate system to each element. 

So first, make sure you have *Database_extent_binary and CMPFLG=1. This flags the orthotropic materials to output in their local coordinate system:

https://www.dynasupport.com/howtos/element/coordinate-system-for-stress

Next, you will want to define AOPT in the *Material card which is the material axes. This will define a local axis for each element defined with that material. There are multiple methods to do this, some resources I have listed below:

https://www.dynasupport.com/howtos/material/orthotropic-materials

http://ftp.lstc.com/anonymous/outgoing/support/PRESENTATIONS/orthotropic-materials-draft-mrj.pdf

This can get very complicated so let me know where you have questions. I can continue to help look into this for you. 

Reply
6 Replies
(@ghillo)
Joined: 5 years ago

Barista
Posts: 4

@negativevolume

Thank you for the immediate reply!

Consider that I am a beginner in the ls-dyna world as I am not the one who performed the analyses, so I am non sure of being able to reply to your questions.

Starting from the beginning:

1) the material - I don't know where to check in the results d3plot file but I know for sure that *MAT_SHAPE_MEMORY (Type 30) has been used as the structure material is Nitinol with well defined characteristics.

2) the type of elements - when I output data to a text file the header of the file contains *ELEMENT_SOLID tag but I do not know if this is sufficient to be 100% sure that the material is not *_ORTHO. But I guess there is no real reason for defining it as orthotropic.

3) CMPFLG=1 and *Database_extent_binary - sorry but I have tried to look under the FEM menu and at the command line when the results file is loaded but I could not find the flag CMPFLG. Is there a command that I can issue in the command line to find an answer to your question? I read the linked page but it was not enough to guide me to the answer.

4) the AOPT  - consider that I have only the results of the analyses and they cannot be rerun. The two documents that you have linked suggest (correct me if I am wrong) that for solid elements vector a is defined along the node 1 - node 2 direction and vector d is along node 1- node 4 direction. Then b and c are computed as axd and cxa. I could use this principle to determine the CS and in turn to compute the 3D rotations of the two configurations that I am examining with respect to the initial/reference one. Then I could apply the opposite rotations to the strain tensors to obtain them in consistent coordinate systems.

However, in my case the material is isotropic and I am not strictly constrained by the presence of the layers as for a composite material, so this definition of the local CS could not be the one that minimizes the differences between the two strain tensors. Anyway the difference shouldn't be large as long as the deformation of the elements are limited. 

Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@ghillo

Ah I see, you only have access to the results. Everything I mentioned would things to look for in the Pre-Processing phase, before the simulation is run. The outputs from a simulation are determined by these various options which are defined in the Pre-Processing phase. So if the simulation wasn’t set up with the intent to analyze strain in the local direction before the simulation was run, then there won’t be much that you can do on your end. There may be some functions or equations that can allow you to transform each element strain output to a local coordinate system, but it will probably be complex and time consuming.

If local strain response was part of your request with the contractor then I would let them know and see if they could do anything on their end to re-run the simulation with the appropriate parameters. 

And I just saw that you mentioned that the material was isotropic. If this is the case, is there any reason in particular that you are wanting to look at the strain in terms of a local coordinate system? I may be mistaken, but it seems like the strain response from the elout would be sufficient. You have the ability to look at strain across the integration points (upper, mid, lower) as well since your element formulation is -1.

I hope this helps somewhat. 

Reply
(@ghillo)
Joined: 5 years ago

Barista
Posts: 4

@negativevolume

Hi,

I am sorry for the misunderstanding about the possibility to change the settings of the analysis.

The analysis cannot be rerun because the results with respect to the local element systems were not required. They became interesting because a fatigue criterion that we have found after the completion of the analysis is based on them. In fact this criterion requires the comparison of the strain tensors of two representative states of the model history with respect to the element local CS. This is for gettting rid of the translation and the rotation of the element between the two states that are actually not relevant for the fatigue calculation (we are only interested in the "distortion" of the element and not in its movement in space).

Going back to your message: I have to apologize but I have not understood what you mean by the "strain response from the elout". If I go to FEM->Post->Fringe component I can choose to visualize the various strain components but the small drop-down menu at the bottom of the window lets me select the "d3plot" option only and not the "Elem" one. Is there any possibility of visualizing/exporting data with respect to the local elements coordinates that I am missing?

By the way, I have created a simple excel file (attached) that starting from the node positions at the two different states (times) and the elements' connectivity automatically computes the change of basis of a generic symmetrical tensor. I decline any responsibility regarding the correctness of the computation! But for cases similar to the one I am dealing with it could be useful or, at least, a staring point.

Regards

Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@ghillo

Oh wow very cool! Unfortunately, I did not have .xls or xlsx attachments allowed prior so your attachment did not go through. I changed that restriction so if you'd still like to attach that file, feel free!

So the fringe component is mainly a tool to visualize response and it can also be used to an analysis of many elements like you are doing here. The elout (element out) is an ascii output where elements are flagged pre-simulation to allow for stress and strain to be extracted from that element in graphical form. If you had access to it, it would be in Post -> ASCII -> elout; or Post -> Binout -> load binout0000 -> elout. If you do have this option, you are probably going to need to scroll through a ton of element ids, so make sure you pinpoint the id range of the part that you are interested in.

Let me know if this is any more helpful than the fringe data. 

Reply
(@ghillo)
Joined: 5 years ago

Barista
Posts: 4

@negativevolume

I see that the topic has taken a slightly different spin but to get back to the original question and to help those that need simply to reconstruct the results in the element local systems of reference: I have been suggested to output the element connectivity (through the "output" option in the menu, and then ticking the "elements" box) to a text file and then to load this file as a key file. In this way the "Elem" option at the bottom of the "fringe" window becomes available.
Maybe this is elementary for experienced users but not for an ls-dyna newbie like me.

Regards

Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@ghillo

Thanks for this, that's an interesting find for sure. I'll try this out to see how it works as well. 

@jhaley this may be useful for you as well. 

Reply




Posts: 24
(@jhaley)
Paid Intern
Joined: 6 years ago

I'm tagging along with this conversation because it is relevant. I'm trying to load up post simulation data that uses a material coordinate frame but I'm having trouble (post processing seems to be the hardest part for me learning Dyna vs. other packages).

I have my Material card formatted to a radial coordinate system (1=r, 2=theta, 3=z)in the x1, x2, x3 sense.

I flagged this appropriately as stated above: "*Database_extent_binary and CMPFLG=1.". When I open the d3plot in PP, I see that the x-stress, y-stress, etc. in the Fringe display are still there and from my knowledge of the problem don't seem to correlate to the correct values (it's a thin wall tube so x1 or r stress should be quite low). If I go down to the drop-down box that says "set coordinate system for stress/strain components" it says d3plot. If I try to select anything else in that plot, the command window shows " load keyword file to use this option".

Nothing seems to show up in the binout file. Do I need to have the DATABASE_ELOUT card to write to binary also or will the element data show in the fringe with the history?

Reply
1 Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@jhaley

From what I can see, it looks like you have covered a lot of the steps correctly. It probably wouldn’t hurt to have all outputs like ELOUT write to the binout. 

Regarding the issue of the drop down only saying d3plot, you can try to open the .k or .dyn that was run in the same window as the d3plot. Maybe that would help?

Ill look into it more

Reply




Posts: 24
(@jhaley)
Paid Intern
Joined: 6 years ago

I haven’t been able to be around Dyna since posting but from memory I had trouble just loading in the keyword file when the d3plot is already imported. I’ve tried this before and when I loaded the keyword file it just replaces the d3plot and the d3plot disappears. What is the correct method to import both the d3 and k file?

Reply
6 Replies
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@jhaley

I was able to do it by opening the d3plot by either dragging the d3plot into PrePost or Open -> binary file. 

Then Open -> keyword and it needs to be the same file that you simulated. You should still be able to view the simulation output and now change that drop down in the fringe from d3plot to elem.

This should work but let me know if you have trouble.

Reply
(@jhaley)
Joined: 6 years ago

Paid Intern
Posts: 24

@negativevolume

I was able to load both of the d3plot and the k file together and see the new coordinate system. When I show the "elem" output, the results don't make any sense. Also, when I try to select the "mat'l" from the dropdown box, Dyna crashes.

I'll give you some quick background on the problem. I'll also attach a section of the email I sent to Dyna support regarding the material card I'm using. I would assume that the simulation is working fine considering that it is running on Dyna 11 and returning no errors.

 

The email:
"I’m contacting you regarding the Barlat YLD2004 material card. According to the documentation, the material axes options available (as described in *MAT_OPTIONTROPIC_ELASTIC) are EQ to 0, 2, 3, and LT. 
 
I am trying to assign a radial coordinate system to my problem, a thin walled tube of solid elements, and have that serve as the coordinate system for the yield function. At first, I despite AOPT = 4 not being shown on the material card, I used it because it represents a radial coordinate system when the material is defined in the following way:
 
*MAT_BARLAT_YLD2004
3,6.0,1e7,0.33
0.679,0.985,1.150,1.028,0.941,1.162,1.367
1.056,0.962,0.683,0.713,1.093,0.847
1.367,1,1,0.695,1,1
4,8,1
0,0,0,0,0,0,1
0,0,1,0,0,0
 
AOPT 4 is not shown in the BARLAT_YLD2004 card although the note under XP, YP, ZP on page 2-1108 (MAT) of the Volume 2 materials suggests that AOPT 4 is available for use. 
 
Therefore, I’ve defined the radial coordinate system about the base of the tube (XP, YP, ZP) = (0,0,0) and the vector going in the z direction since the tube is extruded in the z direction. v = (0, 0, 1) as shown above in the material card.
 
When running this file, the simulation runs and completes successfully with no error. I assume that this means that the AOPT 4 works just fine.
 
First, I wanted to confirm that the AOPT = 4 is actually available to run with this material card. Second, I wanted to confirm that this would be a correct definition for a radial coordinate system using this particular material card. If this is not the correct way to assign a radial coordinate system to this card, do you have any suggestions on doing so?
 
Thanks"
 
I'll also upload and send you the simulation files again. They'll be titled with a similar format but with "AN" to signify the anisotropy. 
 
Thanks much for all of your help.
 
 
Reply
(@jhaley)
Joined: 6 years ago

Paid Intern
Posts: 24

@negativevolume

I should also add that the reason I don't believe that the simulation results are making any sense, I would expect the hoop strain (eps_theta) to correspond to the the "y strain" in the UI. I would expect this hoop strain on the outer surface of the bulges to be growing uniformly and on the outer surface of the bulge in an isolated band on the apex of the bulge. If you plot the x strain and y strain, though, they seem to be mirror images as if they are actually x and y strain. 

Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@jhaley

Have you heard anything back from LSTC regarding your email? I'm curious as others are likely to have similar issues with obtaining strain through cylindrical coordinates. 

One thing regarding AOPT = 4: just because your simulation normal terminates does not mean that LS-Dyna is outputting what you were intending (working correctly). I know that in order to obtain strains through the element coordinate system, that material of that element needs to be orthotropic. 

Also just to clarify, is your tube shell or solid elements? You said thin-walled so I'm assuming it is a shell mesh. 

Reply
(@jhaley)
Joined: 6 years ago

Paid Intern
Posts: 24

@negativevolume

Yes, essentially the problem is that LS-PP does not support the Mat199 / BarlatYld2004 card. The R11 solver can handle the card but it is not available in the PP menu. 

Therefore, when you load the d3plot and then the K file to access the original material frame, it cannot read the material frame because the material frame is assigned within the material card. They said that they would work towards including the Mat199 in the PP as soon as possible.

I've seen found a convoluted way to extract the data I need for my work but that's a different story.

Thanks for all your help in the meantime!

 

Reply
Negative Volume
Admin
(@negativevolume)
Joined: 6 years ago

CEO
Posts: 668

@jhaley

Ah, I see that makes sense then.

Well I’m glad you were able to get the data out another way then!

Reply




Posts: 24
(@jhaley)
Paid Intern
Joined: 6 years ago

@ghillo Thanks for the info and apologies for getting so off topic.

Everything is now working for me as well. The method ghillo mentioned above works fine for me now. LS-Dyna's support notified me last Friday that they released the latest build in Beta (4.7) that includes the Barlat card. With that new PP, all is well.

@negativevolume

Reply







Share: