Mercurial > public > ostc4
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 } |