site map | contact | login | Protection des données personnelles | Powered by FluxBB | réalisation artaban
You are not logged in.
Hello,
that's a very interesting question! See attached .py dump of a simple cube meshed in Salome.
The usual python commands like 'del Mesh_1' or setting it to None simply with 'Mesh_1 = None' do not work. It seems, only the name of the variable is deleted, the mesh does not disappear from the tree.
However, in the Salome-docs you'll find this (remove the __, not allowed to post links... STILL ):
https:__//docs.salome-platform.org/latest/gui/SMESH/smeshBuilder.html?highlight=delete#mesh-class
There is a command named 'RemoveMesh(Mesh_1) which I tried in the attached .py. Voila, the mesh also disappears from the mesh-tree.
The time.sleep(10) is useless, I thought I could see the mesh appear and disappear after 10s.
But the command works,
Mario.
Hello,
in the mesh module, right click on your mesh --> in 'mesh information' choose 'element' and enter the number. Then your element is highlighted.
Mario.
Hello,
no, in this case you cannot use MECA_STATIQUE it does not have an ETAT_INIT.
Yes, you can put both results into one file, in IMPR_RESU just choose both results. In ETAT_INIT of the second STAT_NON_LINE take care to enter the correct INST_ETAT_INIT.
Mario.
Hello,
with support you mean any DX, DY, DZ = 0? It is not possible to 'turn on/off' any ENCASTRE, DXYZ=0 with a multiplier function within one STAT_NON_LINE. You'll have to do that in an additional STAT_NON_LINE (that is removing the BC with the DXYZ = 0) and take the previous STAT_NON_LINE as ETAT_INIT.
Mario.
Hello,
this is probably a coincidence. Also, I do not see how you could do anything wrong in this regard. It is what it is,
Mario.
Hello,
make sure both the yellow buttons (the ones with the paperclip) are clicked. Then run it. If you then for example add/change something in the second stage only, then you can continue after the first step by clicking the blue checkmark (of course: if you change something in step 1 also, there will be no blue checkmark),
Mario.
Hello,
try reducing the mesh size by using a coarser mesh and remove any unneeded meshes. It will reduce the file size,
Mario.
Hello,
no worries, glad it works,
Mario.
Hello,
I do not see any error in your post. You are only showing the .comm file. While you're at it, please upload .comm and .med, so others can run your example and correct any additional problems, that may arise.
thank you,
Mario.
Hello,
your version of singularity seems VERY old. Even in 2021 it was approx. 3.5.
My suggestion would be to try a newer version. The current version is 3.11.x,
Mario.
Hello,
I am not entirely sure what you want. First of all, in ParaVis, you can choose to display the group of interest with 'Extract Group' as you please. In your case: choose the group where contact is defined. So this should not be a problem at all.
Or secondly, do you want a result, where CALC-PRESSION is really = 0 when there is no contact (sounds like it is this)? You could use the 'Calculator' in ParaVis and multiply CALC_PRESSION with CONT_ELEM or CONT_NOEU. But I am not sure what the result is, in CONT_ELEM you do nat have a possible 2, but in CONT_NOEU you will get twice the result if a node has sliding contact. I cannot recreate it at the moment, I am not at the workstation.
Mario.
Hello,
when using LAC, CONT_ELEM will already have such a result (=1 for contact, =0 for no contact).
When DISCRETE or CONTINUE is used in contact, CONT_NOEU shows 0 or 1 in a similar fashion.
Hope that helps,
Mario.
Hello,
I am only guessing but you are using an older version of Code_Aster with a more recent Salome. I do not know for sure, but there might be a version conflict. My recommendation would be to use the newest, containerized version of Salome_Meca.
Mario.
Hello,
why is there a python2 instance in an U22.04 installation? This should not be the case. In U22.04 python3 is standard, python2 was EOL Jan. 1st 2020. Also in my working installation, there is no hint of python2, I only applied the corrections in the above link. Everything else is standard,
Mario.
EDIT: Oh, I misread your post. You installed an older version of Salome-Meca in U22.04. I thought about the containerized version, which is today's standard.
Hello,
WSL2 is a kind of virtualization. In WSL you'll also set the number of cores, amount of RAM etc. just like in Virtualbox. My guess is, that Virtualbox will be slower than WSL, which is highly specialized to run Linux in it.
Regarding which distro to use, you'll get different answers. I'd do: WSL2 in Windows 10, Ubuntu 22.04, Singularity (Apptainer), latest Salome-Meca version from download-page. Also with this setup you'll probably have to apply some minor corrections like described in https:__//code-aster.org/forum2/viewtopic.php?id=26732
I do not know about the GPU, though. If it is not exposed properly by WSL to Ubuntu, you might have to use --soft when launching the container.
Mario.
Hello,
all the other methods don't work in your example, that's why,
Mario.
Hello,
I basically rebuilt your .comm in SM, because I could not import it.
See the attached .comm, it works. I changed the second contact from 'STANDARD' to PENALISATION, my guess is you probably forgot that. My COEF_PENA_CONT is also higher.
The rest is basically much like your .comm, I inserted an ORIE_PEAU at the beginning and the basic definition of DEFI_CONTACT is also a bit different. I chose the most robust parameters (2 * POINT_FIXE and CONTROLE with nb_iter_geom= 10),
have a nice Sunday,
Mario.
Hello all,
in case anyone encounters this error on Ubuntu 22.04LTS with the singularity container, I had this an hour ago.
It is already solved in https:__//github.com/sylabs/singularity/issues/1499
Basically what you'll have to do is
1. Add `max_loop=256` to the `GRUB_CMDLINE_LINUX` value in `/etc/default/grub` (put it in between the " ")
2. Run `update-grub2` as root.
3. Reboot the system.
4. `cat /proc/cmdline` and verify `max_loop=256` is present.
Mario.
Double nodes are a very common mistake, make it a habit to check for DN.
That's an interesting question. Your ALPHA and the T-differences will have the most effect on how much a material expands if there are no mechanical constrictions.
My guess is, E should not be zero. I bet the solver wouldn't like that. Other than that, I would just try different parameters. Please note, I did not really check your parameters, if they make sense physically,
Mario.
The deformed mesh now looks like this with a scale factor of 100. On the top there is still some kind of warping in Y,
Mario.
Hello,
for whatever reason, you have 42 double nodes in your mesh. See images attached, they show how to detect and remove them plus a new result.
I am not sure why this even works, I thought we have to use POURSUITE with more than one stage? Maybe someone with more knowledge could educate us,
Mario
Hello,
I am currently playing around with the script in https:__//code-aster.org/forum2/viewtopic.php?id=14692 .
When increasing the mesh size I arrive at certain limitations. The CREA_MAILLAGE is also very slow, but it can be replaced by COPIER. so far, so good.
The POST_RELEVE_T can be replaced by a CREA_TABLE, which is also faster.
However, when I use a mesh of size 1M elements (still not very large!) the CREA_TABLE becomes the limiting factor. With 1M elements, it consumes about 80% of the simulation time:
********************************************************************************
* COMMAND : USER : SYSTEM : USER+SYS : ELAPSED *
********************************************************************************
* DEBUT : 0.01 : 0.05 : 0.06 : 0.06 *
* DEFI_LIST_REEL : 0.01 : 0.00 : 0.01 : 0.00 *
* DEFI_LIST_INST : 0.00 : 0.00 : 0.00 : 0.00 *
* DEFI_MATERIAU : 0.01 : 0.00 : 0.01 : 0.01 *
* LIRE_MAILLAGE : 8.27 : 0.21 : 8.48 : 8.48 *
* CREA_MAILLAGE : 16.20 : 0.15 : 16.35 : 16.35 *
* AFFE_MODELE : 27.99 : 0.34 : 28.33 : 28.22 *
* AFFE_CARA_ELEM : 13.85 : 0.62 : 14.47 : 14.48 *
* AFFE_MATERIAU : 0.02 : 0.00 : 0.02 : 0.03 *
* AFFE_CHAR_MECA : 2.92 : 0.01 : 2.93 : 2.92 *
* STAT_NON_LINE : 142.29 : 17.39 : 159.68 : 133.04 *
* CALC_CHAMP : 28.91 : 3.63 : 32.54 : 32.44 *
* CREA_TABLE : 2088.65 : 9.26 : 2097.91 : 2097.94 *
* IMPR_RESU : 7.99 : 1.28 : 9.27 : 9.27 *
* COPIER : 0.05 : 0.02 : 0.07 : 0.06 *
* DEFI_GROUP : 24.50 : 1.73 : 26.23 : 26.24 *
* DETRUIRE : 2.36 : 1.02 : 3.38 : 3.37 *
* DETRUIRE : 1.96 : 0.08 : 2.04 : 2.04 *
* DETRUIRE : 1.96 : 0.14 : 2.10 : 2.10 *
* DETRUIRE : 1.96 : 0.12 : 2.08 : 2.08 *
* DETRUIRE : 1.94 : 0.07 : 2.01 : 2.02 *
* DETRUIRE : 1.94 : 0.12 : 2.06 : 2.06 *
* DETRUIRE : 1.95 : 0.12 : 2.07 : 2.08 *
* AFFE_MODELE : 17.31 : 0.12 : 17.43 : 17.33 *
* AFFE_CARA_ELEM : 12.74 : 0.16 : 12.90 : 12.90 *
* AFFE_MATERIAU : 0.03 : 0.00 : 0.03 : 0.03 *
* AFFE_CHAR_MECA : 2.59 : 0.01 : 2.60 : 2.60 *
* STAT_NON_LINE : 115.08 : 11.29 : 126.37 : 109.26 *
* CALC_CHAMP : 23.55 : 1.74 : 25.29 : 25.19 *
* CREA_TABLE : 2520.07 : 6.17 : 2526.24 : 2526.30 *
* IMPR_RESU : 17.95 : 2.45 : 20.40 : 20.39 *
* FIN : 477.29 : 40.72 : 518.01 : 518.01 *
* . check syntax : 10.88 : 1.75 : 12.63 : 12.63 *
* . fortran : 5532.86 : 95.59 : 5628.45 : 5584.38 *
********************************************************************************
* TOTAL_JOB : 5840.61 : 120.84 : 5961.45 : 5917.38 *
********************************************************************************
Is there a python alternative for CREA_TABLE? If I assume 1M elements, the CREA_TABLE only extracts 400 elements per second :-).
Any hints appreciated,
thanks,
Mario.
EDIT: BTW, this CREA_TABLE acts on a RESULT (had to substitute rectangular brackets :-( ):
tab(i) = CREA_TABLE(
RESU=_F(
TOUT=('OUI', ),
NOM_CHAM='SIEQ_ELNO',
NOM_CMP=('VMIS', ),
RESULTAT=res(i)
),
TITRE='VonMises');
Hello,
for sure, there are better methods out there, than just deleting elements with a certain VMIS. While I must say, I do not fully understand what is going on in this script, the number of elements is reduced.
Otherwise, there would not be a (local) maximum of VMIS in the attached image (arc in center of image, where elements were removed above it).
Correct me if I am wrong,
Mario.
Hello,
I am glad this works, I fiddled around all day. The ever increasing mesh is a big problem, though. Also POST_RELEVE_T is VERY slow, the larger the mesh gets. The only way around is keep the number of iterations low and use a coarse mesh.
However, instead of doing the CREA_MAILLAGE
msh(i+1)=CREA_MAILLAGE(MAILLAGE=msh(i),
CREA_MAILLE=_F(NOM=str(i),
TOUT='OUI',
PREF_MAILLE=str(i),
PREF_NUME=i+1,),);
we could copy the mesh with
msh(i+1)=COPIER ( CONCEPT=msh(i) );
This should keep the mesh size within reasonable limits. I had to use () instead of [], please do not copy the above text.
Mario.
Hello,
this example is much too small to benefit from MPI. Even without MPI, it only takes 1.55s,
Mario.