Feedback for line loads - mkraska/meclib GitHub Wiki
"q" is line load with constant or linearly varying (trapezoidal) distribution. It is replaced by one or two resultant forces. Two forces may be convenient, if a trapezoidal distribution is mentally split into a constant and a triangualar part.
Checks done by fb_q()
:
- Is the object really of type "q" (just for developers)?
- Is the object deactivated?
- Is there at least one resultant?
- Make sure that no moments are among the identified resultants
- if there is a single resultant:
- Correct direction?
- Correct value?
- Correct position? Must go through the centroid of the line load
- If there are more than one resultants:
- Are there exactly 2 resultants?
- Are two resultants sensible? (trapezoidal line load)
- Are the directions correct?
- Are the values in terms of the correct variables?
- Is the sum of the resultants correct?
- Does the common centroid of the resultants match the centroid of the line load?
This function is used for Feedback for Free Body Diagrams
Example question: "FBD Tutorial Streckenlastresultierende (I)" at abacus.aalto.fi/develop/4.4beta
Typical PRT
Feedback variables:
obj: stackjson_parse(objects);
[text, isOK]: fb_q(obj, names, i_q, "Streckenlast: ", q_0, q_0, a);
PRT node 1
Algebraic test for isOK = true
and feedback of {@text@}
for both branches.
fb_q(o, n, i, description, q1, q2, le)
[txt, isOK]: txt
feedback textisOK
correctness flago
list of objectsn
names fieldi
index of "q" objectdescription
string with Text to identify the object for the userq1
value at startpointq2
value at endpointle
grid unit length
Note: Function requires fb_vars