Difference between revisions of "SkibUserMacros:SolveMalfunctions"
From Protoi Healing
Line 30: | Line 30: | ||
'''Description''' | '''Description''' | ||
− | : | + | :This is a sub-macro which implements a standard procedure to solve malfunctions. It is typically implemented as a THREAD in the calling macro. |
+ | |||
+ | :Some example: | ||
+ | |||
+ | :<pre> | ||
+ | # '''THREAD''' <1> {{Comment|Try to find solutions for the malfunctions}} | ||
+ | ## '''IF''' option ''{Use solver}'' was not given, '''DO:''' | ||
+ | ### '''THREAD-STOP''' <1>. | ||
+ | ## '''IF-END''' | ||
+ | ## '''SUBMACRO-START''' 'SolveMalfunctions' ''{Use butterfly}'' | ||
+ | # '''THREAD-END''' | ||
+ | </pre> | ||
'''{Use butterfly}''' | '''{Use butterfly}''' | ||
− | : | + | :This option activates the use of the butterfly-method inside the macro algorithm. This gives much more power, but also needs a lot of resources from Skib. You should be aware of this! |
Revision as of 17:26, 7 February 2017
Name | SolveMalfunctions |
---|---|
Author | Frank |
Brief descr. | Tries to solve malfunctions. |
Status | public |
Terms | sub-macro only |
Resources for the UserMacro | |||||
---|---|---|---|---|---|
1 | 10 | 100 | |||
1k | 100k | 1kk | |||
10kk | Gmax | Omax | |||
Resources with butterfly option | |||||
1 | 10 | 100 | |||
1k | 100k | 1kk | |||
10kk | Gmax | Omax |
Command syntax
Description
- This is a sub-macro which implements a standard procedure to solve malfunctions. It is typically implemented as a THREAD in the calling macro.
- Some example:
- '''THREAD''' <1> {{Comment|Try to find solutions for the malfunctions}}
- '''IF''' option ''{Use solver}'' was not given, '''DO:'''
- '''THREAD-STOP''' <1>.
- '''IF-END'''
- '''SUBMACRO-START''' 'SolveMalfunctions' ''{Use butterfly}''
- '''IF''' option ''{Use solver}'' was not given, '''DO:'''
- '''THREAD-END'''
{Use butterfly}
- This option activates the use of the butterfly-method inside the macro algorithm. This gives much more power, but also needs a lot of resources from Skib. You should be aware of this!
Algorithm of User Macro
- Use DATABASE 'Malfunction'.
- 'Own actions' are defined as all actions done by the calling macro.
- 'Counter actions' are defined as all counter actions done in the context of the calling macro.
- LOOP <T:15seconds>
- Scan all context of the calling macro.
- TRY to identify all 'own actions' and all 'counter actions' in all context of the calling macro.
- TRY to trace all found 'own actions' and all 'counter actions'.
- TRY to identify all 'malfunctions' in all context of the calling macro.
- TRY to trace all found 'malfunctions'.
- Create an optimal solution for all 'malfunctions'.
- Create optimal procedures for the solution.
- TRY to apply the solution by using the optimal solution procedures.
- IF the former solution or parts of the solution repeatedly failed and the option {Use butterfly} was given, DO:
- Use butterfly-method for the solution.
- IF-END
- TRY to identify the success of the solution and procedure.
- Store all successful parts of the solution and the procedure in the 'Malfunction' DATABASE.
- LOOP-END