×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Modify FE Mesh by Editing CAE file directly?
3

Modify FE Mesh by Editing CAE file directly?

Modify FE Mesh by Editing CAE file directly?

(OP)
I need to do FEA on many similar organic parts. So rather than generating meshes and cae files for each of them, I would like to deform a master FE mesh to each of the parts. The deformation algorithms I have developed elsewhere, so no need for help on that.

What I am hoping for is the ability to access a list of vertices of the FE mesh through the CAE file, modify the locations, and put them back into the cae file, then run the new sim.
I tried to open the CAE file in notepad, and as I suspected, its a bunch of giberish! :-<

Anyone have any ideas how to do this?

Thanks,
Sam

RE: Modify FE Mesh by Editing CAE file directly?

Try using a macro if you're repeatedly modfifying geometry. You'll still have to open cae each time but the macro will make the changes quickly.

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
I've never written a macro for Abaqus before. Will I be able to re-position any given vertex of a part's FE mesh?
The parts are organic and the deformations are free form, so need to have the ability to translate each FE mesh vertex independently for the part.
Could you show me a sample script for translating a FE mesh vertex, or maybe point me in the right direction?

Thanks,
Sam

RE: Modify FE Mesh by Editing CAE file directly?

Is there a reason why you don't want to do this in the input file instead of the cae file?

Han primo incensus

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
My typical work flow when using Abaqus is to import an iges part into Abaqus cae directly, then mesh it inside Abqus cae. So I have never used input files before. I am open to suggestions though.
Really I just need a list of FE mesh vertices for a part so that I can use my deformation algorithm to translate the vertices, then replace the original vertices in abaqus with the new vertices. It would be great if I could get the mesh vertices in a text file from abaqus, modify them, and then give the text file back to Abaqus.

I'm not even sure where the input file resides, how to get it from a cae file, and how to put it back into a cae file...

Thanks,
Sam

RE: Modify FE Mesh by Editing CAE file directly?

Once you import the model and mesh it you can have Abaqus write the input file, this is done by creating a job and right-clicking on the job and choose "Write Input File". This file has the mesh details (nodes, elements, and connectivity). It is the file that Abaqus actually runs when you perform an analysis.

Your macro (or whatever it is) can then either modify it or create new ones.

HTH,
Dan

Han primo incensus

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
Great, thanks!

That's got me rolling for now, I may have some more questions down the road on this same topic.

Thanks again,
Sam

RE: Modify FE Mesh by Editing CAE file directly?

I guess times are changing. It used to be that every analyst was familiar with the deck (input file) and knew what every row in there meant (at least the good ones did). Perhaps that is dying now that pre/posts are getting better and more seamless. The Patran/ABAQUS guys still have to hack the deck quite a bit.

But I still like to look at (and work in) the deck manually. At lot of times it is more efficient and is always the end product from your pre processor.

Being familiar with a deck has many advantages. One notable one is that it is sometimes easier to communicate/demonstrate how you set up a problem since sharing a deck is easy. It is also pre/post independent (many ABAQUS users still use Patran). You can also build entire models without having to use a pre processor so it can be very efficient to run parametric studies.  

Brian
www.espcomposites.com

RE: Modify FE Mesh by Editing CAE file directly?

Modifying the input file/deck still has its place but for anyone with access to CAE python scripting offers a very useful method of pre-processing. I've found it alot easier to deal with things like element connectivities etc. with Abaqus python (since there is a built in method to deal with them).

For the original question, I presume by vertices of the mesh you mean mesh nodes? Its very easy to map mesh nodes within CAE with python...for example here's a snippet of code that maps a flat orphan mesh part onto a cylindrical one in CAE.

    for eachnode in MeshPart.nodes:
        theta=eachnode.coordinates[1]/Radius
        newcoord1=eachnode.coordinates[0]
        newcoord2=(Radius-eachnode.coordinates[2])*cos(theta)
        newcoord3=(Radius-eachnode.coordinates[2])*sin(theta)
        MeshPart.editNode(nodes=eachnode,coordinate1=newcoord1,coordinate2=newcoord2,
            coordinate3=newcoord3)

RE: Modify FE Mesh by Editing CAE file directly?

And there are still some things that can't be done in the CAE!

I can't say that I've done a lot with the inp files but I've played with them now and then.

Han primo incensus

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
Thanks so much for your thoughts.
I'm calculating the deformations withing a plugin for Rhinoceros 3D, so it is really convenient to just modify the inp file as a text file and send that off to abaqus on any computer.
The models are fairly complicated and the deformations are large, so I'm hoping the FE mesh isn't distorted beyond use... If thats the case, then maybe I will use python instead, automate the remeshing and so on...

In regards to the inp file, I should probably check out the manual for a detailed guide on each line. Is that the best way to learn?
Couple quick questions I had about it:
- nodes are listed as such: number, x-coord, y-coord, z-coord
how does abaqus know which node to connect to which node to form an element? Is it just the first 4 form the first tetrahedron, the second four form the second tetrahedron (in the case of tetrahedrons?)
- picked surfaces are described by a long string of numbers, these  are just referring to nodes?

Thanks!
Sam

RE: Modify FE Mesh by Editing CAE file directly?

I have found that the CAE default method of using assembly and part definitions makes rooting around in the node and element tables very difficult. If you want become more familiar with the .inp instead of relying on the CAE interface (I HIGHLY recommend this, it makes debugging much easier once you know what each line is doing), have CAE write out a 'flattened' input deck. This way, you can still deal with the assembly of part instances in CAE as you're used to, but can then go into the input deck without having to figure out which part you're in....
With that said, a flattened deck will start with a node table
*NODE
Node number, x coordinate, y coordinate, z coordinate.
1, 0.0, 0.0, 0.0

The solver knows how to turn these into elements with the element connectivity table.
*ELEMENT, TYPE=...
element number, node 1, node 2, node 3, ....etc..
1, 1, 2, 3, 4...etc.

Surfaces are then defined based on the elements defined above
*SURFACE
element number, face identifier
1,S1


The manual is very good detailing what the data lines required for a given element type are.

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
OK, I'm going to try first to work with the input file.

By right clicking on the job and selecting 'write input', I get the input file. How do I get the flattened input file?

Thanks,
Sam

RE: Modify FE Mesh by Editing CAE file directly?

There are a few ways. You can add the following line to your abaqusv6.env file

noPartsInputFile=ON

OR enter the following line into the small command window at the bottom of the CAE sessions

mdb.models['model name'].setValues(noPartsInputFile=ON)

Depending on which version of CAE you're using, I believe there's a check box somewhere for 'use parts and instances'. You may be abe to just uncheck it.

RE: Modify FE Mesh by Editing CAE file directly?

(OP)
OK, I'm well on my way thanks to you all
Cheers,
Sam

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources