[Archive] Issue with mesh models for 2D thin surfaces

Message by James Vale:
Hi there,
I am new to SPIS so please bear with me. I have been trying to model a 2D thin surface for a thin solar panel as described in the SPIS user manual (SPIS 5.1) and by using the thinSurf2.geo file as a template to help me understand it.
As the title suggests I’ve been having issues with setting the mesh models, and general attributes of the groups, following the set up.
For example in the user manual is states that all of the surfaces generated through the mesh splitting should be set as spacecraft surface groups and defined as in table 6. However I cant find the option for “Spacecraft Thin element 2D - teared surface” under this grouping. This option can be found under the computational volume group, however, but it doesn’t seem right to define multiple computational volumes - could anyone point me in the right direction for setting this up correctly?
Further to this, do I set the edge groups as spacecraft surface groups? and then should the sub volume surfaces surrounding the 2D surface be defined as external boundary groups?
I hope you can help
Cheers
James

Message by James Vale:
Adding on to this, managed to sort the issue (I think) however I used to get the “array index out of bound exception 0” error when trying to initialise the numerical kernel i now get a “java.lang.NullPointerException” error. The full error message is as follows:
"Ooops! There was an error while initializing the numerical kernel.
Please report it to the development team or on SPIS bug tracker.
Do not forget to include the debug.txt file at the root of the software.
Stacktrace:
java.lang.NullPointerException
at spis.Vol.VolMesh.ThreeDUnstructVolMesh.mapToInternalNodeIndexing(ThreeDUnstructVolMesh.java:2293)
at spis.Vol.VolMesh.ThreeDUnstructVolMesh.mapToInternalNodeIndexing(ThreeDUnstructVolMesh.java:2380)
at spis.Vol.VolMesh.ThreeDUnstructVolMesh.setInternNodeNumbering(ThreeDUnstructVolMesh.java:2465)
at spis.Solver.Poisson.ConjGrad3DUnstructPoissonSolver.init(ConjGrad3DUnstructPoissonSolver.java:341)
at spis.Solver.Poisson.ConjGrad3DUnstructPoissonSolver.(ConjGrad3DUnstructPoissonSolver.java:185)
at spis.Top.Simulation.SimulationFromUIParams.init(SimulationFromUIParams.java:933)
at spis.Top.Simulation.SimulationFromUIParams.(SimulationFromUIParams.java:438)
at spis.Top.Top.NumTopFromUI.(NumTopFromUI.java:157)
at org.spis.ui.ui2num.util.Ui2Num.buildNumTopFromUI(Ui2Num.java:355)
at org.spis.ui.ui2num.command.NumTopFromUICommand.run(NumTopFromUICommand.java:162)
at org.spis.ui.ui2num.command.NumTopFromUICommand.run(NumTopFromUICommand.java:52)
at org.keridwen.core.messaging.AbstractCommand.execute(AbstractCommand.java:200)
at org.keridwen.core.messaging.DefaultBundleController$CallableCommand.call(DefaultBundleController.java:260)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"
Any idea what this is caused by?
Cheers
James

Message by ruard:
Dear James Vale,
I try to answer to your questions here about setting groups in group editor:
1°) First, you have to perform the mesh splitting as described in the user manual.
2°) Then, new groups are created with specific names as described in the user manual.
3°) Define the priority of the groups as axplained in the user manual.
4°) Set the groups:

  • EdgeGroup-originalBorder must be set with the group type called "Spacecraft surface group". The specific properties called "S/C mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Original Border".
  • EdgeGroup-duplicatedBorder must be set with the group type called "Spacecraft surface group". The specific properties called "S/C mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Duplicated Border".
  • FaceGroup-OriginalSurfaceSplitted must be set with the group type called "Spacecraft surface group". The specific properties called "S/C mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Original Surface".
  • FaceGroup-DuplicatedSurfaceSplitted must be set with the group type called "Spacecraft surface group". The specific properties called "S/C mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Duplicated Surface".
  • The first FaceGroup-TearedSurfaces must be set with the group type called "Computational volume group". The specific properties called "volume mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Teared surfaces".
  • The second FaceGroup-TearedSurfaces must be set with the group type called "Computational volume group". The specific properties called "volume mesh properties" must be set to the value called "Mesh Model - Spacecraft Thin Element 2D - Teared surfaces".
  • FaceGroup which models the external computational volume must be set with the group type called "External boundary group" with default properties.
  • VolumeGroup which models the computational group must be set with the group type called "Computational volume group". The specific properties called "volume mesh properties" must be set to the value called "Mesh Model Volume, default".
If your respect these parameters, it should work. Tell us if it solves your problem or not. Regards, Benjamin Jeanty Ruard

Message by James Vale:
Dear Benjamin, thanks for getting back to me, and my apologies for not getting back to you sooner. Your advice definitely helped and solved the problem I had
I had incorrectly set up a few of the groups following the mesh splitting which then created the errors it seems.
I did have a further question however that you may also be able to help me with and if need be ill post this in another thread:
If I wished to model the solar sail as having one side coated in aluminium and the other kapton (i.e a kapton sail with one side aluminised) - Would I be able to do this by defining the original surface as AL2K for example and the duplicated surface as KAPT? or would that not work? I guess my question stems from not fully understanding what the additional generated groups are…
Thanks for your help
Kind regards
James

Message by Christian Imhof:
Hi James,
I think that you can model two different materials if you apply these to the two groups generated by the mesh splitting. What is, however, more difficult is the model of a full isolator in your model since the materials concept in SPIS is always assuming a conductor beneath any dielectric. So, what you could try is to apply a different node to the sail materials which is isolated from the rest of your structure. I think this will bring you closest to the situation you are trying to model. Additionally you could think of turning of the “Volume Conductivity” in your global properties, however, this effects then everything not only the sail.
I hope this helps you proceeding with your work.
Greetings
Christian

1 Like

Message by James Vale:
Just as a quick follow up to this comment - essentially what I was interested in doing was to model the sail as being non-conductive from front to back (sunlit side t shadowed side) if that is at all possible