Ideas for a more logical structure of the model tree
I would like to get rid of the items "Masses" and "Damping" in the model tree and instead group those parameters by the component they belong to. The additional masses for the string, for example, should be part of the "String" item and the damping ratio of the string as well. So the string item would become:
-
String
- (New: Material name)
- Strand density
- Strand stiffness
- Num. strands
- Center mass
- Tip mass
- Damping ratio
The arrow should also get its own item:
-
Arrow
- Mass
- Clamp force
Now we have limb tip mass and limb damping ratio left over, which don't fit into any of the current items. So maybe there should be a limb item as well that contains those parameters as well as the other groups related to the limb:
-
Limb
- Tip mass
- Damping ratio
-
Materials
- ...
-
Layers
- ...
-
Width
- ...
-
Profile
- ...
Disadvantage: There would be one more level of nesting than before. Also the "limb" item is an expandable group but also has parameters of its own, which none of the other group items currently do. An alternative could be to be more explicit:
-
Limb
-
Properties
- Tip mass
- Damping ratio
-
Materials
- ...
-
Layers
- ...
-
Width
- ...
-
Profile
- ...
-
Properties
I think that Masses and Damping are just secondary parameters that describe other, more fundamental properties. At the moment, it’s not possible to model a real-world bow in full detail, including different limb tip designs, etc. Therefore, using a separate limb tip mass parameter is one way to examine how different designs affect bow behavior—specifically, how much the limb tip mass contributes.
Damping is similar, because it is essentially a material-related parameter and also includes other losses (such as air resistance). Materials have a viscoelastic nature, especially natural materials, so in the future the Damping parameter will likely belong in the Materials group, once it becomes possible to define the loss tangent (tan δ) for different materials.
So, I think that Masses and Damping may eventually disappear as independent parameters as the program continues to develop.
Those are good points, especially the damping ideally being a material property. I see you already have some thoughts on that (loss tangent), so I'm going to create an issue for collecting those first ideas.