comparison Discovery/Src/tMenuDecoParameter.c @ 902:d4622533271d Evo_2_23

VPM table mode: Because of the model maths, usage of float data type and so on it may happen that the TTS decreases during ascent and continues calculation of the vpm. To keep the values stable the vpm table mode has been introduces. Instead of continously calculation of the stops the stop time is decreased if the diver is close to a deco stop. If the table is violated (e.g. by not doing gas change) the table will be updated to the new, longer runtime. The table will not be switch back to a shorter version in case e.g. the missed gas change is performed
author Ideenmodellierer
date Wed, 02 Oct 2024 22:18:19 +0200
parents 5f11787b4f42
children
comparison
equal deleted inserted replaced
901:e4e9acfde839 902:d4622533271d
145 else 145 else
146 decotypeTxtId = TXT_ZHL16GF; 146 decotypeTxtId = TXT_ZHL16GF;
147 147
148 textPointer += snprintf(&text[textPointer], 60,\ 148 textPointer += snprintf(&text[textPointer], 60,\
149 "%c" 149 "%c"
150 "\t" 150 "\t "
151 "%c" 151 "%c"
152 , TXT_DecoAlgorithm 152 , TXT_DecoAlgorithm
153 , decotypeTxtId 153 , decotypeTxtId
154 ); 154 );
155 } 155 }
158 158
159 if((line == 0) || (line == 2)) 159 if((line == 0) || (line == 2))
160 { 160 {
161 textPointer += snprintf(&text[textPointer], 60,\ 161 textPointer += snprintf(&text[textPointer], 60,\
162 "VPM" 162 "VPM"
163 "\t" 163 "\t "
164 "+" 164 "+"
165 "%u" 165 "%u"
166 , VpmConsveratism 166 , VpmConsveratism
167 ); 167 );
168 } 168 }
174 textPointer += snprintf(&text[textPointer], 60,\ 174 textPointer += snprintf(&text[textPointer], 60,\
175 "GF" 175 "GF"
176 "\016\016" 176 "\016\016"
177 "low/high" 177 "low/high"
178 "\017" 178 "\017"
179 "\t" 179 "\t "
180 "%u" 180 "%u"
181 "/" 181 "/"
182 "%u" 182 "%u"
183 , GFlow, GFhigh 183 , GFlow, GFhigh
184 ); 184 );
191 textPointer += snprintf(&text[textPointer], 60,\ 191 textPointer += snprintf(&text[textPointer], 60,\
192 "aGF" 192 "aGF"
193 "\016\016" 193 "\016\016"
194 "low/high" 194 "low/high"
195 "\017" 195 "\017"
196 "\t" 196 "\t "
197 "%u" 197 "%u"
198 "/" 198 "/"
199 "%u" 199 "%u"
200 , aGFlow, aGFhigh 200 , aGFlow, aGFhigh
201 ); 201 );
205 205
206 if((line == 0) || (line == 5)) 206 if((line == 0) || (line == 5))
207 { 207 {
208 textPointer += snprintf(&text[textPointer], 60,\ 208 textPointer += snprintf(&text[textPointer], 60,\
209 "%c" 209 "%c"
210 "\t" 210 "\t "
211 "%u" 211 "%u"
212 "\016\016" 212 "\016\016"
213 " %c%c" 213 " %c%c"
214 "\017" 214 "\017"
215 , TXT_LastDecostop 215 , TXT_LastDecostop
218 , unit_depth_char2() 218 , unit_depth_char2()
219 ); 219 );
220 } 220 }
221 strcpy(&text[textPointer],"\n\r"); 221 strcpy(&text[textPointer],"\n\r");
222 textPointer += 2; 222 textPointer += 2;
223 if((line == 0) || (line == 6))
224 {
225 textPointer+= snprintf(&text[textPointer], 60, "%c%c\t ",TXT_2BYTE,TXT2BYTE_VpmTable);
226 if(settingsGetPointer()->VPM_conservatism.ub.alternative)
227 text[textPointer++] = '\005';
228 else
229 text[textPointer++] = '\006';
230 text[textPointer] = 0;
231 }
232 strcpy(&text[textPointer],"\n\r");
233 textPointer += 2;
223 234
224 return StMDECOP; 235 return StMDECOP;
225 } 236 }