src/polyfit.h

Sat, 08 Jun 2024 15:54:30 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sat, 08 Jun 2024 15:54:30 +0200
changeset 527
84091b9cb800
parent 508
7f2ec2bc9d2e
permissions
-rw-r--r--

Version 0.4.6a1. Added HLT equipment volume and deadspace settings. In EditProduct the target water selection is now sticky. Changed the water treatment tab. Added a row wich displays the salt adjustments. This can be selected between actual and target values. The treated water show can select between mash or sparge water. The total line will become the final water in the boil kettle. Database update function is expanded with the new settings. Added a popup message warning that the database is upgraded and user action is required for the equipment profiles.

508
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /**
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * @brief Header file for MLS polynomial fitting.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 * @file polyfit.h
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * @author Henry Forson, Melbourne, FL
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 */
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 //------------------------------------------------------------------------------------
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 // MIT License
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 //
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 // Copyright (c) 2020 Henry M. Forson
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 //
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 // Permission is hereby granted, free of charge, to any person obtaining a copy
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 // of this software and associated documentation files (the "Software"), to deal
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 // in the Software without restriction, including without limitation the rights
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 // copies of the Software, and to permit persons to whom the Software is
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 // furnished to do so, subject to the following conditions:
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 //
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 // The above copyright notice and this permission notice shall be included in all
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 // copies or substantial portions of the Software.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 //
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 // SOFTWARE.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 //------------------------------------------------------------------------------------
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 #ifndef POLYFIT_H
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 #define POLYFIT_H
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 #include <QString>
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 /**
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 * @namespace Polyfit
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 *
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43 * @brief Global math functions.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44 */
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 namespace Polyfit {
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 /**
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 * @brief Computes polynomial coefficients that best fit a set of input points.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 * @param pointCount Number of points
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 * @param xValues Array of double values.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 * @param yValues Array of double values.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 * @param coefficientCount Number of coefficients in results.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 * @param coefficientResults Array of coefficientCount double results.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 * @return Error result, 0 is Ok.
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 */
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 int polyfit( int pointCount, double *xValues, double *yValues, int coefficientCount, double *coefficientResults );
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 }
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57
7f2ec2bc9d2e Added polyfit files.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 #endif // POLYFIT_H

mercurial