* fit_dat removed. Please use datafit instead.
[scilab.git] / scilab / modules / optimization / tests / nonreg_tests / bug_244.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2008 - INRIA - Vincent COUVERT
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- TEST WITH GRAPHIC -->
8 // <-- Non-regression test for bug 244 -->
9 //
10 // <-- Bugzilla URL -->
11 // http://bugzilla.scilab.org/show_bug.cgi?id=244
12 //
13 // <-- Short Description -->
14 //   recursion problems with fsolve
15 // Titration of a dibase with HCl (at the beginning, a little amount of NaOH was added)
16 // parameters
17 //C0=2.39e-4
18 C0=2e-4;
19 C02=0.02;
20 na0=2e-7;
21 v0=0.01;
22 pK1=6.9;
23 pK2=6.9;
24 // function to get the calculated pH
25 deff('[x]=f0(pH)','x=(10^(-pH-pK1)+2*10^(-2*pH))/(10^(-pK1-pK2)+10^(-pH-pK1)+10^(-2*pH))+((v0+v)*(10^(-pH)-10^(pH-14))+na0-C02*v)/(C0*v0)');
26 deff('[pH]=fpH(p)','v=p;pH=fsolve(7,f0)');
27 // data
28 X=[];Y=[];
29 X=[
30 //0     
31 0.00001 
32 0.00002 
33 0.00003 
34 0.00004 
35 0.00005 
36 0.000055        
37 0.00006 
38 0.000065        
39 0.00007 
40 0.000075        
41 0.00008 
42 0.000085        
43 0.00009 
44 0.000095        
45 0.0001  
46 0.000105        
47 0.00011 
48 0.000115        
49 0.00012 
50 0.000125        
51 0.00013 
52 0.000135        
53 0.00014 
54 0.000145        
55 0.00015 
56 0.000155        
57 0.00016 
58 0.000165        
59 0.00017 
60 0.000175        
61 0.00018 
62 0.000185        
63 0.00019 
64 0.000195        
65 0.0002  
66 0.000205        
67 0.00021 
68 0.000215        
69 0.00022 
70 0.000225        
71 0.00023 
72 0.000235        
73 0.00024 
74 0.000245        
75 0.00025 
76 0.000255        
77 0.00026 
78 0.000265        
79 0.00027 
80 0.000275        
81 0.00028 
82 0.000285        
83 0.000295        
84 0.000305        
85 0.00032 
86 0.000345        
87 0.000395        
88 0.000445        
89 ];
90 Y=[
91 //8.21  
92 7.82    
93 7.64    
94 7.48    
95 7.37    
96 7.22    
97 7.20    
98 7.17    
99 7.13    
100 7.12    
101 7.12    
102 7.10    
103 7.07    
104 7.04    
105 7.07    
106 7.04    
107 7.01    
108 6.98    
109 6.94    
110 6.91    
111 6.87    
112 6.84    
113 6.80    
114 6.76    
115 6.73    
116 6.68    
117 6.61    
118 6.57    
119 6.51    
120 6.45    
121 6.36    
122 6.27    
123 6.14    
124 6.02    
125 5.84    
126 5.64    
127 5.34    
128 5.00    
129 4.80    
130 4.59    
131 4.46    
132 4.40    
133 4.33    
134 4.24    
135 4.18    
136 4.11    
137 4.07    
138 4.02    
139 3.99    
140 3.95    
141 3.91    
142 3.88    
143 3.86    
144 3.80    
145 3.76    
146 3.69    
147 3.60    
148 3.47    
149 3.36    
150 ];
151 // fitting
152 Z=[Y;X];
153 deff('e=G(p,z)','pK1=p(1),pK2=p(2),v=z(2),pHexp=z(1),e=pHexp-fpH(v)');
154 [p,err]=datafit(G,Z,[6;7]);
155 // graphic part
156 clf()
157 //v=[0:1e-5:4.5e-4]
158 v=X;
159 fplot2d(v,fpH);
160 plot2d(X,Y,[-2]);