Forum Replies Created
-
AuthorPosts
-
19 January 2016 at 00:55 in reply to: [SOLVED] Cmake error in building SOFA : cannot find Eigen3 #5334HugoKeymaster
Hmm looks strange.
I will let the developers know about this, and come back to you asap.Cheers,
Hugo
18 January 2016 at 21:38 in reply to: [SOLVED] NewOmniDriver: GNode cannot access protected member #5327HugoKeymasterHi Cece,
I do not have my own computer with me, so it’s not very easy to answer you.
However, I looked within the GNode.h (located in modules/component/sofa/simulation/tree) and it appears that the function parent() is now protected. You can however use the function getParents() returning all potential parent nodes. From here, you should be able to get the parent node you need.
I will see if some other developers have more information.Hope this helps already.
Cheers,Hugo
13 January 2016 at 16:43 in reply to: CarvingManager & OmniEvent applications: who wrote these? Can we chat? #5322HugoKeymasterHi Michel,
Nice to hear! Do not hesitate to download our binaries!
We have them for Windows and Linux.Looking forward to hearing from you,
best,Hugo
13 January 2016 at 08:51 in reply to: [SOLVED] Cmake error in building SOFA : cannot find Eigen3 #5319HugoKeymasterDear Jo,
I am not working on Windows but did you try to set a variable “Eigen3_DIR” to the path: PATH_TO_SOFA/extlibs/eigen-3.2.7 in the Cmake configuration ?
Let us know if it helps.
Cheers,
Hugo
29 December 2015 at 00:36 in reply to: CarvingManager & OmniEvent applications: who wrote these? Can we chat? #5250HugoKeymasterDear Michel,
I know you have been in contact with some of our engineers.
Have your problem been solved or do you still need help on this ?Best,
Hugo
HugoKeymasterDear Zabolian,
As mentioned by @fspadoni in your other topic about having several windows, the best way to develop your own interface is to write you own GUI, for instance using Qt. To do so, you can base your work on the Sofa GUI (i.e. applications/sofa/gui/qt/RealGUI.cpp or the plugin SimpleGUI in applications/plugins/SofaSimpleGUI)
I would then advise to have a look at the Qt doc: http://www.qcustomplot.com/index.php/demos/barchartdemo
Hope this helps.
Hugo
HugoKeymasterDear Raj,
Nice to hear that you want to develop a NeoHookean triangular forcefield in SOFA.
I do understand what you mean about your confusion about the library names. This comes from a classification of the code. Many codes were existing in the past, we separated it so that the basic/usual FEM are in SofaSimpleFEM. The more advanced and specific implementations of forcefields is stored in SofaMiscFEM.
To implement your own NeoHookean triangular forcefield, there is several functions of interest (to build the stiffness matrix K). You can take the SofaSimpleFEM/TriangularFEMForceFieldOptim.inl, as an example. If you are using a CG (iteretive) approach, then look at the addForce and addDForce functions.
- addForce: in the system Ax=b, addForce builds the b vector by multiplying K with u.
- addDForce: is used for implicit integration and add the stiffness component to the A matrix, but without constructing A (direct matrix vector multiplication)
If you are using a direct solver, look at the addKToMatrix function instead of addDForce. addKToMatrix does the same operation but the matrix A is really built
A plugin called Flexible (applications/plugins/Flexible) already implements the NeoHookean constitutive law. However, the specificity of this plugin is that the constitutive law and the shape functions (element type) are decoupled. I don’t know this plugin very well, but some other users should be able to help you with it. You can already have a look at the example: applications/plugins/Flexible/examples/material/NeoHookean.scn
Hope these first clues will help you.
Hugo
HugoKeymasterDear Zahra,
What do you mean exactly by export forcefields ?
If you want to export a specific field (real value per node) you can still use one of the exporter (such as VTKExporter). The VTKExporter has additional output fields that you can connect (@) to the variable you want to export: pointsDataFields and cellsDataFields.
Is that what you need ?Cheers,
Hugo
HugoKeymasterThank you for your reply Max.
This helped (I confirmed it !)Cheers,
Hugo
10 December 2015 at 09:21 in reply to: [SOLVED] Elastic behaviour and TetrahedronFEMForceField #4845HugoKeymasterHi Zsolt,
Thanks for your feedback.
As mentionned above, we are currently starting new work in that direction to validate our codes. So I’ll let you know about our own advances in comparing Abaqus (in our case) and SOFA.Best,
Hugo
10 December 2015 at 09:18 in reply to: [SOLVED] TriangleModel.h:284:88: error: no match for ‘operator*’ #4843HugoKeymasterHi Jean-Nicolas,
Thanks a lot for your feedback.
We are working on allowing any user of the community to make pull request. Today, this isn’t allowed by the gForge that we are using. This will change very soon.We will let you know when pull-request will be available on the website.
Best,
Hugo
HugoKeymasterDear bushra,
For the warning of “Creation failed”, it might mean that the plugin is not properly loaded. Could you try to run the example outside the Modeler while making sure that the plugin is loaded ?
Hugo
HugoKeymasterHi Fabian,
Very good news ! We are still working on it in the dev community.
This is of interest, but we’re almost there (for Windows, Mac and Linux). However, the set of patches would be very interesting. We can discuss it during your visit next week in Strasbourg !Cheers from Stras,
Hugo
HugoKeymasterAlright !
My pleasure, do not hesitate to contact us again.
I’ll close the topic.Cheers,
Hugo
HugoKeymasterDear Cece,
I am no expert about the Omni control. I know there is the Sensable plugin in SOFA which proposes an OmniDriver and handles the control of the buttons. You can find several examples in “sofa/applications/plugins/Sensable/examples/”.
Hope this helps. If not, recontact us, we will give you the contact of people working on similar problems.
Cheers,
Hugo
HugoKeymasterAlright,
If you need any further help with your file, do not hesitate to ask.
Best,
Hugo
HugoKeymasterHi Zahra,
Indeed, I meant TriangularSetGeometryAlgorithms and IDs were meaning indices.
To load your file.msh in the scene, you need to edit the “TopologySurfaceDifferentMesh.scn” scene file and replace in the MeshGmshLoader the filename with your own file:
<MeshGmshLoader name="loader" filename="PATH-TO-YOUR-FILE" />
Then, if your restart your scene: you own file will be loaded. The information (such as the positions, the edges and triangles) will correspond to your own mesh.
If the loading fails, it may come from your file itself. To check your file, you can compare it with the existing “square3.msh”.
You can also send me your mesh so that I check its connectivity.
But in SOFA, you can load a file with only points and triangles, then edges are automatically created in the topology.Cheers,
Hugo
HugoKeymasterHi Zahra,
I am not sure to get what you are looking for:
– Is that the ID of the edges and triangles? if so then, look in the topology component SetTopologyAlgorithm (in the tab Visualization, you can find the option to see the ids).
– basically, in the loaders, you just load an existing file, i.e. a topology. In this file (.msh in your case), all the points, optionally edges, and triangles are defined. No you cannot edit your mesh so easily in SOFA.
Do not hesitate to give us further information.
Cheers,
Hugo
HugoKeymasterHi Saleh,
For more information about the LDI you can directly contact Hadrien Courtecuisse. He may be able to tell you more about the plugin, its access and the licences. Do not hesitate to contact him.
The website of SOFA is gonna evolve soon to allow the community to know every plugin (even private) and get information about it (access and licences).
Cheers,
Hugo
18 November 2015 at 14:52 in reply to: [SOLVED] TriangleModel.h:284:88: error: no match for ‘operator*’ #4221HugoKeymasterHi Jean-Nicolas !
Thank you for your patch.
What is your version of SOFA ? I assume a quite recent one, right ?
I will try to reproduce the bug and see why it happens and wasn’t fixed.Thank you again for providing us feedback !
Hugo
HugoKeymasterHi Zahra,
Indeed it is using a regularGridTopology. About the instabilities, there are just due to a wrong choice of time step. Here the implicit integration requires a smaller time step. No more instabilities are noticed when dt is set to 0.01.
About the quadrilateral FEM, I am sorry but not much is indeed existing. However, I would be more than happy to help you in developping a new FEMForceField with you in SOFA.Cheers,
Hugo
HugoKeymasterDear Zahra,
Pressing “O” only works for the visual model.
Otherwise, you can use the OBJExporter component in your scene in order to export it.Cheers,
Hugo
HugoKeymasterDear Zahra,
1. I think you misused the word “quadratic”. You meant quadrilateral (made of quads), right ? Then, you cannot use hexahedronFF if your mesh includes only quads: these are two different kind of elements (i.e. different shape functions). For simulations using quads, please refer to the examples: examples/Components/forcefield/QuadBendingSprings.scn
2. Indeed the QuadrilateralFEMForceField does not exist (has not been implemented) at my best knowledge. If you feel confident to do it, you are more than welcome to contribute.
3. In our simulations, we rarely use the quads indeed, the best is to look at the examples (and tutorials but you already did it!). Then, the next step would be to start the implementation.
Best regards,
Hugo
16 November 2015 at 17:39 in reply to: [SOLVED] Elastic behaviour and TetrahedronFEMForceField #4153HugoKeymasterHi Zsolt,
Ok, your final goal sounds a bit complicated (or complicated to explain through the forum!). I created a video of what you are computing, it seems quite unrealistic indeed !
link: here.Did you check the units of your simulation. I see 9.81 m/s as a gravity acceleration and I opened your mesh which is about 16 meters long ! is that normal ?
Best,
Hugo
HugoKeymasterHi @bushra,
Sorry for the delay of our reply.
You mentionned the error “Cannot open a file SofaComponentMain.lib”. Is your build/lib folder empty ? If you successfully compiled SOFA, this folder shouldn’t be empty.When you activated the Xitact plugin in CMake, CMake did not complain ?
There is a dependency to SofaComponentMain librairy, but everything looks fine.
Do you have further info about the linking error ?Best,
Hugo
-
AuthorPosts