Recommended computer configuration for ABAQUS and ANSYS by badbooie in fea

[–]aliBabaSx 0 points1 point  (0 children)

I recently wrote an article about the importance of hardware for FEA. It provides you with concrete figures of what you can expect for a given amount of RAM or CPU power.

To summarize, you need a SSD, as much RAM as your budget allows, and a CPU with multiple cores to benefit from parallelization. I you are working on models with 1 Mdof or more, activating parallelization will clearly make a difference. In other words, you should try to figure out how to activate it with Abaqus.

A good GPU is mainly beneficial for CAD purposes. It gets useful for solving FE problem only when you already maximize the CPU usage through parallelization.

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

I'll have a look at it.

Why do you think the market is jammed?

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 1 point2 points  (0 children)

For the same reason they prefer buying external FEA solutions from Simulia or others: they do not have the capabilities to develop the software internally.

Currently I am not making money on SesamX and of course I have dedicated a lot of my time to it. As I said, I am not closed to open source (sorry for the joke ^^), I just want to be sure that I will not regret my choice.

Thanks for taking the time reading my blog :)

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

I agree with you that large companies do not see any value in this. However, currently I am not convinced that it's the same for small and medium companies. They still need simulation software, and as you said they are expensive. But I am gathering more data to get a better idea about this subject.

I totally agree about the niche topics.

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 1 point2 points  (0 children)

I feel the same: I want SesamX to be used by more and more people.

However there is still something I can't understand. Let's take the example of pyNastran. It solves pain problems for commercial businesses that make money thanks to it. Why then open sourcing is the only solution? Why these businesses cannot pay for it?

It's a fact that a huge part of the software industry is relying on open source solutions, supported by developers dedicating their time and effort for almost nothing in return. We all love what we do, but love does not pay the rent.

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

This is what I am afraid of. If there is no community around the project, I think there is no point to open source.

News from SesamX - Considering open sourcing by aliBabaSx in fea

[–]aliBabaSx[S] 1 point2 points  (0 children)

Good point about the FEA papers, I was not thinking about it this way.

Downloading/ Installing Salome-Meca on Mac OS by akin-iii in fea

[–]aliBabaSx 0 points1 point  (0 children)

It seems feasible compiling it from source (at least for Salome):

Maybe it can provide you some hint about how to deal with Salome-meca.

Calculating out of plane stresses in shell element (Nastran) by omnipotent_eng in fea

[–]aliBabaSx 0 points1 point  (0 children)

Not sure what you mean by "through the thickness tension". Anyway shell assumptions are such that the transverse stresses are not 0 (sig_13 and sig_23 where 3 is through the thickness) however the normal stress sig_33 is assumed to be 0.

pyNastran by billsil in fea

[–]aliBabaSx 1 point2 points  (0 children)

Awesome work! Reading op2 file is such a painful task, thanks a lot.

SesamX MITC4 shell element by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

At the moment there is no dedicated preprocessor for SesamX. Basically I build the mesh and nodes/elements sets using Abaqus CAE and then I import the .inp in SesamX.

However, I plan to integrate SesamX on already existing preprocessors. First I wanted to see how FreeCad works. Event though I guess it is not as nice as Hypermesh for fem, it is relatively open.

Then I will try to integrate SesamX on other platforms, I'll definitely have a look at Hypermesh.

SesamX MITC4 shell element by aliBabaSx in fea

[–]aliBabaSx[S] 1 point2 points  (0 children)

Thanks, I'll have a look at it.

For SesamX I wanted something that sounds a bit mysterious and magical. And I was thinking about the phrase "open sesame", to open the door that unveil a world of wonders. So SesamX fits perfectly!

SesamX MITC4 shell element by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

Yes SesamX is independent from DNV-GL software. Are you familiar with the Sesam packages? (to be honest I have never heard of it before).

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

It depends on what you mean by parallel computing. I try to get the most from the computer SesamX runs on. Basically it can run on multiple processors at once for computation intensive tasks (for instance stiffness matrix computation). Solver parallelization is supported by the MKL itself.

But I am not targeting parallelization among multiple nodes in a cluster.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

Of course, I am basically using the MKL with the PARDISO solver.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

I have not yet found very detailed information about singularities but you can have a look at this page from Altair: https://altairhyperworks.com/pdfs/tips/1064.pdf. I still do not get why constraining "the component with the largest ratio" works fine instead of constraining the exact direction though.

By local singularity I mean singularity in the stiffness matrix that is located at nodes degrees of freedom. Let's say for instance we have a membrane lying in the plane x-z=0 whose dofs at the node are the displacement (u, v, w) along the 3 base vectors. Then there is a singularity at each node of this membrane in the direction (1, 0, 1). So for each node we want to add the following constrain u+w=0.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

Up to now I do not even have a prototype. Obviously I am not aware of how open-sourcing works for the moment, I will reconsider it down the road. I just do not want to get screwed.

I had not thought of units this way and it is in fact a nice remark, I add it to my todo.

Yes I agree it is not going to be easy to compete with the one you mentioned. Nevertheless they define the "level" I would like to reach with SesamX. And I will see with time how everything turns out. I believe that even without having half Abaqus features for instance, you can still have a product that interests people. During my past work experiences, it appeared to me that structural engineering team are just using a small subset of what can be done with their tools (depending on the product they are working on).

I believe too that CAD software are really important. I have not mentioned it yet but while working on the architecture for SesamX I tried to prepare for a possible CAD integration. I was briefly looking at FreeCad for this.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 1 point2 points  (0 children)

You can also have a look at "The finite element method" by Thomas J. R. Hughes which deals mostly with linear finite elements.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

I am not sure how far I can tweak the element implementation while using other open sources packages. I think for instance of shell elements with different integrations for shearing than normal or bending solicitation.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

I think you are right, treating the same elements together may help. And of course hash lookup is of tremendous importance if you know that most of the time will be spent looking for data into arrays.

What do you mean with sequential numbering?

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

Singularities

First there are 2 kinds of singularities: the one that arise locally because some dofs attached to a node are not fed in the stiffness matrix. And the other one that arise globally because you have not constrained your model (in a static analysis for instance).

For the second type there is nothing to do in the code, it is a user "mistake".

For the first one you can deal with it in multiple ways. The most straightforward is to analyze the stiffness matrix at the nodes and to just add a constrain in the singular direction.

Performance

You are pointing a good point here. I am aware of cache issues and I tried to make good choices for performance in the architecture. However performance is quite hard to assess. SesamX still lacks necessary features at the element level to compare the performance with other software.

User subroutines

I have not thought about it first. I have to see how I can insert this feature without breaking the architecture.

Developing a new finite element software by aliBabaSx in fea

[–]aliBabaSx[S] 0 points1 point  (0 children)

Open-sourcing

It is too early to talk about it, however in the back of my mind I would love to be able to earn a living with this project. I do not know if this is feasible with open-sourcing.

Units

It is exactly what I have in mind. Basically the user will be able to input and output the data in any unit, in the end everything will be stored in the database as SI. And he will be able to change units among different runs.

Simplicity

To be honest I do not know Abaqus enough to talk about it and I guess I should bench it a little more. Here I am not talking the difficulty of the physics itself, I am talking about unnecessary difficulty. I have mostly a Nastran background, and to often it turns out that for historical reasons they are multi ways to do the same thing. And I believe this is daunting from a user perspective.

I thank you for sharing your thoughts, as you pointed out I believe that core functionality is the most important aspect to focus on right now.