Comments (7)
Dear Dorian,
Thanks so much for your solution. Actually I was doing similar things. As shown below, I created a medium with each pixel having unique orientations (discrete orientations from ODF as you did).
I am wondering if having more/small "grains" in the medium would be helpful to avoid the "unrealistic stress concentration" problem you mentioned earlier.
BTW, is it possible to have this type of fake medium above and below the area of interest?
Best regards,
Diego
from mtex2gmsh.
Hello Diego,
Have you looked at the medium
option in the mesh
command? This option was actually designed to implement an homogenized behavior in the surrounding medium (not a element-wise behavior). AFAIK, PRIMS-plasticity only works with CP behavior, hence it is impossible to define a stress-strain behavior. Hence, here a two possible approaches:
- Write a small script which first pick random orientations from your ODF (see MTEX doc for that), then allocate these orientations to each elements in the medium.
- Estimate the homogenized behavior first, then apply it to the medium. This can be done by FEM or FFT simulations. You can also use a Sachs model, as I have done in [1]. You will have to hard-code the homogenized behavior in PRISMS-Plasticity source code.
I think method 2 is the best option because method 1 can lead to unrealistic stress concentration a the medium/RoI interface. In addition, you will have to perform several simulations with different random orientations in order to ensure that the overall behavior you get is independent of these orientations. Nevertheless, method 2 requires advanced knowledge in C++ programming.
[1] https://doi.org/10.1016/j.ijplas.2023.103695
from mtex2gmsh.
Dear Dorian,
Thanks for the reply. I was actually talking about method 1 (dont need C++ programming). I know how to extract the discrete orientations from a specific ODF, but dont know how to "allocate these orientations to each element in the medium. Do you have any idea how to achieve this?
Regards,
Diego
from mtex2gmsh.
Hello Diego,
Sorry for the delay, I have just come back from vacation. The method 1 is actually not as easy as it sounds, because it requires some knowledge about scripting language (like Python) plus understanding how msh files are structured. Indeed, you need to create physical groups for each element in your medium, whereas physical groups are usually associated with geometrical entities (e.g. surfaces, volumes), not elements, in Gmsh. Hence the need to edit the msh file afterward.
I will try to investigate this in the next few days.
from mtex2gmsh.
Hello @Diego8901,
Please, find here a possible partial implementation of your approach.
I think the easiest to do this is indeed to create dummy grains around your region of interest, and treat them as normal grains in MTEX2Gmsh. To do this, I just create random orientations (picked from the ODF) at random locations in the medium.
The image bellow illustrates the differences between the granular geometry we have initially (left) and the geometry we get with dummy EBSD data in the medium (right).
from mtex2gmsh.
Wow, that's a lot of elements!
Obviously, the larger the number of elements, the less likely you are to have odd stress concentration. But maybe you should try to slightly reduce your number of elements 🤔
I don't think it would be easy to add such kind of fake medium below the RoI because MTEX2Gmsh does not handle 3D EBSD.
from mtex2gmsh.
You are right, Dorian!
I certainly have to reduce the number of element, but do you have any recommendations on the size of the medium (I mean maybe there is a recommended ratio between the width of the medium and that of the AOI) so that we can largely avoid the odd stress concentration and maintain an acceptable calculation efficiency?
from mtex2gmsh.
Related Issues (18)
- Documentation HOT 6
- [need some help] mesh-command fails HOT 2
- issues with MTEX2Prisms HOT 7
- Image meshing HOT 1
- how to plot the output from Quadrature file. HOT 3
- Create edges between nodes in Z direction HOT 1
- Create more elements in Z direction HOT 6
- [need some help] gmshGeo fails HOT 3
- Running MTEX2Gmsh on macOS Ventura 13.3.1 HOT 8
- Gradient option does not work in 2D
- matlab warnings HOT 3
- Paper revisions HOT 2
- Paper review HOT 5
- Incoherent Elements at grain boundaries HOT 10
- [help wanted] Creating phase groups HOT 1
- Physical Surface when meshing in 2D HOT 3
- Add a 'medium' contour to a 2D mesh HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mtex2gmsh.