Move the SystemStructure from SymbolicAWEModels to KiteUtils#102
Move the SystemStructure from SymbolicAWEModels to KiteUtils#102
Conversation
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
ufechner7
left a comment
There was a problem hiding this comment.
Please, address the inline comments.
| const disturb::KVec3 # disturbing force | ||
| const force::KVec3 | ||
| const type::DynamicsType | ||
| mass::SimFloat |
There was a problem hiding this comment.
Documentation of the fields mass and bridle_damping is missing. A physical unit must be provided. How can a point have a bridle_damping? Damping is a property of a segment, and not of a point.
| - `vel_w::KVec3=zeros(KVec3)`: Initial velocity of the point in world frame. | ||
| - `transform_idx::Int16=1`: Index of the transform used for initial positioning. | ||
| - `mass::Float64=0.0`: Mass of the point [kg]. | ||
| - `bridle_damping::Float64=0.0`: Damping coefficient for bridle points. |
There was a problem hiding this comment.
A point cannot have a damping.
| mutable struct Group | ||
| const idx::Int16 | ||
| const point_idxs::Vector{Int16} | ||
| const le_pos::KVec3 # point which the group rotates around under wing deformation |
There was a problem hiding this comment.
Why is this called le_pos? What does le stand for?
| # Arguments | ||
| - `idx::Int16`: Unique identifier for the group. | ||
| - `point_idxs::Vector{Int16}`: Indices of points that move together with this group's twist. | ||
| - `le_pos::KVec3`: Leading edge position in body frame. |
There was a problem hiding this comment.
The body frame is not defined at http://localhost:8000/reference_frames.html . Do not use reference frames without documenting how they are defined.
| - `point_idxs::Vector{Int16}`: Indices of points that move together with this group's twist. | ||
| - `le_pos::KVec3`: Leading edge position in body frame. | ||
| - `chord::KVec3`: Chord vector in body frame. | ||
| - `y_airf::KVec3`: Spanwise vector in local panel frame. |
There was a problem hiding this comment.
The local panel frame is not defined at http://localhost:8000/reference_frames.html . Do not use reference frames without documenting how they are defined.
| aoa::SimFloat | ||
| fix_sphere::Bool | ||
| y_damping::SimFloat | ||
| z_disturb::SimFloat |
| end | ||
|
|
||
| # Helper functions for quaternion/rotation matrix conversion | ||
| function quaternion_to_rotation_matrix(q::Vector{SimFloat}) |
There was a problem hiding this comment.
Why is this function in this file and not in the file transformations.jl ?
| return R | ||
| end | ||
|
|
||
| function rotation_matrix_to_quaternion(R::Matrix{SimFloat}) |
There was a problem hiding this comment.
Why is this function in this file and not in the file transformations.jl ?
| end | ||
|
|
||
| function Base.getproperty(wing::BaseWing, sym::Symbol) | ||
| if sym == :R_b_w |
There was a problem hiding this comment.
What is R_b_w? Where is it documented?
| # Arguments | ||
| - `idx::Int16`: Unique identifier for the wing. | ||
| - `group_idxs::Vector{Int16}`: Indices of groups attached to this wing. | ||
| - `R_b_c::Matrix{SimFloat}`: Rotation matrix from body frame to CAD frame. |
There was a problem hiding this comment.
What is the CAD frame? Do not use reference frames that are not documented in http://localhost:8000/reference_frames.html .
|
Outdated |
This is necessary so KiteViewers can be updated to plot a SystemStructure.