Modified: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/differentiation/JacobianFunctionTest.html ============================================================================== --- websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/differentiation/JacobianFunctionTest.html (original) +++ websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/differentiation/JacobianFunctionTest.html Sat Apr 6 23:42:01 2013 @@ -20,7 +20,7 @@ <FONT color="green">017</FONT> <a name="line.17"></a> <FONT color="green">018</FONT> package org.apache.commons.math3.analysis.differentiation;<a name="line.18"></a> <FONT color="green">019</FONT> <a name="line.19"></a> -<FONT color="green">020</FONT> import junit.framework.Assert;<a name="line.20"></a> +<FONT color="green">020</FONT> import org.junit.Assert;<a name="line.20"></a> <FONT color="green">021</FONT> <a name="line.21"></a> <FONT color="green">022</FONT> import org.apache.commons.math3.TestUtils;<a name="line.22"></a> <FONT color="green">023</FONT> import org.apache.commons.math3.util.FastMath;<a name="line.23"></a>
Added: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolatorTest.html ============================================================================== --- websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolatorTest.html (added) +++ websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolatorTest.html Sat Apr 6 23:42:01 2013 @@ -0,0 +1,341 @@ +<HTML> +<BODY BGCOLOR="white"> +<PRE> +<FONT color="green">001</FONT> /*<a name="line.1"></a> +<FONT color="green">002</FONT> * Licensed to the Apache Software Foundation (ASF) under one or more<a name="line.2"></a> +<FONT color="green">003</FONT> * contributor license agreements. See the NOTICE file distributed with<a name="line.3"></a> +<FONT color="green">004</FONT> * this work for additional information regarding copyright ownership.<a name="line.4"></a> +<FONT color="green">005</FONT> * The ASF licenses this file to You under the Apache License, Version 2.0<a name="line.5"></a> +<FONT color="green">006</FONT> * (the "License"); you may not use this file except in compliance with<a name="line.6"></a> +<FONT color="green">007</FONT> * the License. You may obtain a copy of the License at<a name="line.7"></a> +<FONT color="green">008</FONT> *<a name="line.8"></a> +<FONT color="green">009</FONT> * http://www.apache.org/licenses/LICENSE-2.0<a name="line.9"></a> +<FONT color="green">010</FONT> *<a name="line.10"></a> +<FONT color="green">011</FONT> * Unless required by applicable law or agreed to in writing, software<a name="line.11"></a> +<FONT color="green">012</FONT> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.12"></a> +<FONT color="green">013</FONT> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.13"></a> +<FONT color="green">014</FONT> * See the License for the specific language governing permissions and<a name="line.14"></a> +<FONT color="green">015</FONT> * limitations under the License.<a name="line.15"></a> +<FONT color="green">016</FONT> */<a name="line.16"></a> +<FONT color="green">017</FONT> package org.apache.commons.math3.analysis.interpolation;<a name="line.17"></a> +<FONT color="green">018</FONT> <a name="line.18"></a> +<FONT color="green">019</FONT> import java.util.Random;<a name="line.19"></a> +<FONT color="green">020</FONT> <a name="line.20"></a> +<FONT color="green">021</FONT> import org.apache.commons.math3.analysis.polynomials.PolynomialFunction;<a name="line.21"></a> +<FONT color="green">022</FONT> import org.apache.commons.math3.dfp.Dfp;<a name="line.22"></a> +<FONT color="green">023</FONT> import org.apache.commons.math3.dfp.DfpField;<a name="line.23"></a> +<FONT color="green">024</FONT> import org.apache.commons.math3.exception.NoDataException;<a name="line.24"></a> +<FONT color="green">025</FONT> import org.apache.commons.math3.fraction.BigFraction;<a name="line.25"></a> +<FONT color="green">026</FONT> import org.apache.commons.math3.util.FastMath;<a name="line.26"></a> +<FONT color="green">027</FONT> import org.junit.Assert;<a name="line.27"></a> +<FONT color="green">028</FONT> import org.junit.Test;<a name="line.28"></a> +<FONT color="green">029</FONT> <a name="line.29"></a> +<FONT color="green">030</FONT> public class FieldHermiteInterpolatorTest {<a name="line.30"></a> +<FONT color="green">031</FONT> <a name="line.31"></a> +<FONT color="green">032</FONT> @Test<a name="line.32"></a> +<FONT color="green">033</FONT> public void testZero() {<a name="line.33"></a> +<FONT color="green">034</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.34"></a> +<FONT color="green">035</FONT> interpolator.addSamplePoint(new BigFraction(0), new BigFraction[] { new BigFraction(0) });<a name="line.35"></a> +<FONT color="green">036</FONT> for (int x = -10; x < 10; x++) {<a name="line.36"></a> +<FONT color="green">037</FONT> BigFraction y = interpolator.value(new BigFraction(x))[0];<a name="line.37"></a> +<FONT color="green">038</FONT> Assert.assertEquals(BigFraction.ZERO, y);<a name="line.38"></a> +<FONT color="green">039</FONT> BigFraction[][] derivatives = interpolator.derivatives(new BigFraction(x), 1);<a name="line.39"></a> +<FONT color="green">040</FONT> Assert.assertEquals(BigFraction.ZERO, derivatives[0][0]);<a name="line.40"></a> +<FONT color="green">041</FONT> Assert.assertEquals(BigFraction.ZERO, derivatives[1][0]);<a name="line.41"></a> +<FONT color="green">042</FONT> }<a name="line.42"></a> +<FONT color="green">043</FONT> }<a name="line.43"></a> +<FONT color="green">044</FONT> <a name="line.44"></a> +<FONT color="green">045</FONT> @Test<a name="line.45"></a> +<FONT color="green">046</FONT> public void testQuadratic() {<a name="line.46"></a> +<FONT color="green">047</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.47"></a> +<FONT color="green">048</FONT> interpolator.addSamplePoint(new BigFraction(0), new BigFraction[] { new BigFraction(2) });<a name="line.48"></a> +<FONT color="green">049</FONT> interpolator.addSamplePoint(new BigFraction(1), new BigFraction[] { new BigFraction(0) });<a name="line.49"></a> +<FONT color="green">050</FONT> interpolator.addSamplePoint(new BigFraction(2), new BigFraction[] { new BigFraction(0) });<a name="line.50"></a> +<FONT color="green">051</FONT> for (double x = -10; x < 10; x += 1.0) {<a name="line.51"></a> +<FONT color="green">052</FONT> BigFraction y = interpolator.value(new BigFraction(x))[0];<a name="line.52"></a> +<FONT color="green">053</FONT> Assert.assertEquals((x - 1) * (x - 2), y.doubleValue(), 1.0e-15);<a name="line.53"></a> +<FONT color="green">054</FONT> BigFraction[][] derivatives = interpolator.derivatives(new BigFraction(x), 3);<a name="line.54"></a> +<FONT color="green">055</FONT> Assert.assertEquals((x - 1) * (x - 2), derivatives[0][0].doubleValue(), 1.0e-15);<a name="line.55"></a> +<FONT color="green">056</FONT> Assert.assertEquals(2 * x - 3, derivatives[1][0].doubleValue(), 1.0e-15);<a name="line.56"></a> +<FONT color="green">057</FONT> Assert.assertEquals(2, derivatives[2][0].doubleValue(), 1.0e-15);<a name="line.57"></a> +<FONT color="green">058</FONT> Assert.assertEquals(0, derivatives[3][0].doubleValue(), 1.0e-15);<a name="line.58"></a> +<FONT color="green">059</FONT> }<a name="line.59"></a> +<FONT color="green">060</FONT> }<a name="line.60"></a> +<FONT color="green">061</FONT> <a name="line.61"></a> +<FONT color="green">062</FONT> @Test<a name="line.62"></a> +<FONT color="green">063</FONT> public void testMixedDerivatives() {<a name="line.63"></a> +<FONT color="green">064</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.64"></a> +<FONT color="green">065</FONT> interpolator.addSamplePoint(new BigFraction(0), new BigFraction[] { new BigFraction(1) }, new BigFraction[] { new BigFraction(2) });<a name="line.65"></a> +<FONT color="green">066</FONT> interpolator.addSamplePoint(new BigFraction(1), new BigFraction[] { new BigFraction(4) });<a name="line.66"></a> +<FONT color="green">067</FONT> interpolator.addSamplePoint(new BigFraction(2), new BigFraction[] { new BigFraction(5) }, new BigFraction[] { new BigFraction(2) });<a name="line.67"></a> +<FONT color="green">068</FONT> BigFraction[][] derivatives = interpolator.derivatives(new BigFraction(0), 5);<a name="line.68"></a> +<FONT color="green">069</FONT> Assert.assertEquals(new BigFraction( 1), derivatives[0][0]);<a name="line.69"></a> +<FONT color="green">070</FONT> Assert.assertEquals(new BigFraction( 2), derivatives[1][0]);<a name="line.70"></a> +<FONT color="green">071</FONT> Assert.assertEquals(new BigFraction( 8), derivatives[2][0]);<a name="line.71"></a> +<FONT color="green">072</FONT> Assert.assertEquals(new BigFraction(-24), derivatives[3][0]);<a name="line.72"></a> +<FONT color="green">073</FONT> Assert.assertEquals(new BigFraction( 24), derivatives[4][0]);<a name="line.73"></a> +<FONT color="green">074</FONT> Assert.assertEquals(new BigFraction( 0), derivatives[5][0]);<a name="line.74"></a> +<FONT color="green">075</FONT> derivatives = interpolator.derivatives(new BigFraction(1), 5);<a name="line.75"></a> +<FONT color="green">076</FONT> Assert.assertEquals(new BigFraction( 4), derivatives[0][0]);<a name="line.76"></a> +<FONT color="green">077</FONT> Assert.assertEquals(new BigFraction( 2), derivatives[1][0]);<a name="line.77"></a> +<FONT color="green">078</FONT> Assert.assertEquals(new BigFraction( -4), derivatives[2][0]);<a name="line.78"></a> +<FONT color="green">079</FONT> Assert.assertEquals(new BigFraction( 0), derivatives[3][0]);<a name="line.79"></a> +<FONT color="green">080</FONT> Assert.assertEquals(new BigFraction( 24), derivatives[4][0]);<a name="line.80"></a> +<FONT color="green">081</FONT> Assert.assertEquals(new BigFraction( 0), derivatives[5][0]);<a name="line.81"></a> +<FONT color="green">082</FONT> derivatives = interpolator.derivatives(new BigFraction(2), 5);<a name="line.82"></a> +<FONT color="green">083</FONT> Assert.assertEquals(new BigFraction( 5), derivatives[0][0]);<a name="line.83"></a> +<FONT color="green">084</FONT> Assert.assertEquals(new BigFraction( 2), derivatives[1][0]);<a name="line.84"></a> +<FONT color="green">085</FONT> Assert.assertEquals(new BigFraction( 8), derivatives[2][0]);<a name="line.85"></a> +<FONT color="green">086</FONT> Assert.assertEquals(new BigFraction( 24), derivatives[3][0]);<a name="line.86"></a> +<FONT color="green">087</FONT> Assert.assertEquals(new BigFraction( 24), derivatives[4][0]);<a name="line.87"></a> +<FONT color="green">088</FONT> Assert.assertEquals(new BigFraction( 0), derivatives[5][0]);<a name="line.88"></a> +<FONT color="green">089</FONT> }<a name="line.89"></a> +<FONT color="green">090</FONT> <a name="line.90"></a> +<FONT color="green">091</FONT> @Test<a name="line.91"></a> +<FONT color="green">092</FONT> public void testRandomPolynomialsValuesOnly() {<a name="line.92"></a> +<FONT color="green">093</FONT> <a name="line.93"></a> +<FONT color="green">094</FONT> Random random = new Random(0x42b1e7dbd361a932l);<a name="line.94"></a> +<FONT color="green">095</FONT> <a name="line.95"></a> +<FONT color="green">096</FONT> for (int i = 0; i < 100; ++i) {<a name="line.96"></a> +<FONT color="green">097</FONT> <a name="line.97"></a> +<FONT color="green">098</FONT> int maxDegree = 0;<a name="line.98"></a> +<FONT color="green">099</FONT> PolynomialFunction[] p = new PolynomialFunction[5];<a name="line.99"></a> +<FONT color="green">100</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.100"></a> +<FONT color="green">101</FONT> int degree = random.nextInt(7);<a name="line.101"></a> +<FONT color="green">102</FONT> p[k] = randomPolynomial(degree, random);<a name="line.102"></a> +<FONT color="green">103</FONT> maxDegree = FastMath.max(maxDegree, degree);<a name="line.103"></a> +<FONT color="green">104</FONT> }<a name="line.104"></a> +<FONT color="green">105</FONT> <a name="line.105"></a> +<FONT color="green">106</FONT> DfpField field = new DfpField(30);<a name="line.106"></a> +<FONT color="green">107</FONT> Dfp step = field.getOne().divide(field.newDfp(10));<a name="line.107"></a> +<FONT color="green">108</FONT> FieldHermiteInterpolator<Dfp> interpolator = new FieldHermiteInterpolator<Dfp>();<a name="line.108"></a> +<FONT color="green">109</FONT> for (int j = 0; j < 1 + maxDegree; ++j) {<a name="line.109"></a> +<FONT color="green">110</FONT> Dfp x = field.newDfp(j).multiply(step);<a name="line.110"></a> +<FONT color="green">111</FONT> Dfp[] values = new Dfp[p.length];<a name="line.111"></a> +<FONT color="green">112</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.112"></a> +<FONT color="green">113</FONT> values[k] = field.newDfp(p[k].value(x.getReal()));<a name="line.113"></a> +<FONT color="green">114</FONT> }<a name="line.114"></a> +<FONT color="green">115</FONT> interpolator.addSamplePoint(x, values);<a name="line.115"></a> +<FONT color="green">116</FONT> }<a name="line.116"></a> +<FONT color="green">117</FONT> <a name="line.117"></a> +<FONT color="green">118</FONT> for (int j = 0; j < 20; ++j) {<a name="line.118"></a> +<FONT color="green">119</FONT> Dfp x = field.newDfp(j).multiply(step);<a name="line.119"></a> +<FONT color="green">120</FONT> Dfp[] values = interpolator.value(x);<a name="line.120"></a> +<FONT color="green">121</FONT> Assert.assertEquals(p.length, values.length);<a name="line.121"></a> +<FONT color="green">122</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.122"></a> +<FONT color="green">123</FONT> Assert.assertEquals(p[k].value(x.getReal()),<a name="line.123"></a> +<FONT color="green">124</FONT> values[k].getReal(),<a name="line.124"></a> +<FONT color="green">125</FONT> 1.0e-8 * FastMath.abs(p[k].value(x.getReal())));<a name="line.125"></a> +<FONT color="green">126</FONT> }<a name="line.126"></a> +<FONT color="green">127</FONT> }<a name="line.127"></a> +<FONT color="green">128</FONT> <a name="line.128"></a> +<FONT color="green">129</FONT> }<a name="line.129"></a> +<FONT color="green">130</FONT> <a name="line.130"></a> +<FONT color="green">131</FONT> }<a name="line.131"></a> +<FONT color="green">132</FONT> <a name="line.132"></a> +<FONT color="green">133</FONT> @Test<a name="line.133"></a> +<FONT color="green">134</FONT> public void testRandomPolynomialsFirstDerivative() {<a name="line.134"></a> +<FONT color="green">135</FONT> <a name="line.135"></a> +<FONT color="green">136</FONT> Random random = new Random(0x570803c982ca5d3bl);<a name="line.136"></a> +<FONT color="green">137</FONT> <a name="line.137"></a> +<FONT color="green">138</FONT> for (int i = 0; i < 100; ++i) {<a name="line.138"></a> +<FONT color="green">139</FONT> <a name="line.139"></a> +<FONT color="green">140</FONT> int maxDegree = 0;<a name="line.140"></a> +<FONT color="green">141</FONT> PolynomialFunction[] p = new PolynomialFunction[5];<a name="line.141"></a> +<FONT color="green">142</FONT> PolynomialFunction[] pPrime = new PolynomialFunction[5];<a name="line.142"></a> +<FONT color="green">143</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.143"></a> +<FONT color="green">144</FONT> int degree = random.nextInt(7);<a name="line.144"></a> +<FONT color="green">145</FONT> p[k] = randomPolynomial(degree, random);<a name="line.145"></a> +<FONT color="green">146</FONT> pPrime[k] = p[k].polynomialDerivative();<a name="line.146"></a> +<FONT color="green">147</FONT> maxDegree = FastMath.max(maxDegree, degree);<a name="line.147"></a> +<FONT color="green">148</FONT> }<a name="line.148"></a> +<FONT color="green">149</FONT> <a name="line.149"></a> +<FONT color="green">150</FONT> DfpField field = new DfpField(30);<a name="line.150"></a> +<FONT color="green">151</FONT> Dfp step = field.getOne().divide(field.newDfp(10));<a name="line.151"></a> +<FONT color="green">152</FONT> FieldHermiteInterpolator<Dfp> interpolator = new FieldHermiteInterpolator<Dfp>();<a name="line.152"></a> +<FONT color="green">153</FONT> for (int j = 0; j < 1 + maxDegree / 2; ++j) {<a name="line.153"></a> +<FONT color="green">154</FONT> Dfp x = field.newDfp(j).multiply(step);<a name="line.154"></a> +<FONT color="green">155</FONT> Dfp[] values = new Dfp[p.length];<a name="line.155"></a> +<FONT color="green">156</FONT> Dfp[] derivatives = new Dfp[p.length];<a name="line.156"></a> +<FONT color="green">157</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.157"></a> +<FONT color="green">158</FONT> values[k] = field.newDfp(p[k].value(x.getReal()));<a name="line.158"></a> +<FONT color="green">159</FONT> derivatives[k] = field.newDfp(pPrime[k].value(x.getReal()));<a name="line.159"></a> +<FONT color="green">160</FONT> }<a name="line.160"></a> +<FONT color="green">161</FONT> interpolator.addSamplePoint(x, values, derivatives);<a name="line.161"></a> +<FONT color="green">162</FONT> }<a name="line.162"></a> +<FONT color="green">163</FONT> <a name="line.163"></a> +<FONT color="green">164</FONT> Dfp h = step.divide(field.newDfp(100000));<a name="line.164"></a> +<FONT color="green">165</FONT> for (int j = 0; j < 20; ++j) {<a name="line.165"></a> +<FONT color="green">166</FONT> Dfp x = field.newDfp(j).multiply(step);<a name="line.166"></a> +<FONT color="green">167</FONT> Dfp[] y = interpolator.value(x);<a name="line.167"></a> +<FONT color="green">168</FONT> Dfp[] yP = interpolator.value(x.add(h));<a name="line.168"></a> +<FONT color="green">169</FONT> Dfp[] yM = interpolator.value(x.subtract(h));<a name="line.169"></a> +<FONT color="green">170</FONT> Assert.assertEquals(p.length, y.length);<a name="line.170"></a> +<FONT color="green">171</FONT> for (int k = 0; k < p.length; ++k) {<a name="line.171"></a> +<FONT color="green">172</FONT> Assert.assertEquals(p[k].value(x.getReal()),<a name="line.172"></a> +<FONT color="green">173</FONT> y[k].getReal(),<a name="line.173"></a> +<FONT color="green">174</FONT> 1.0e-8 * FastMath.abs(p[k].value(x.getReal())));<a name="line.174"></a> +<FONT color="green">175</FONT> Assert.assertEquals(pPrime[k].value(x.getReal()),<a name="line.175"></a> +<FONT color="green">176</FONT> yP[k].subtract(yM[k]).divide(h.multiply(2)).getReal(),<a name="line.176"></a> +<FONT color="green">177</FONT> 4.0e-8 * FastMath.abs(p[k].value(x.getReal())));<a name="line.177"></a> +<FONT color="green">178</FONT> }<a name="line.178"></a> +<FONT color="green">179</FONT> }<a name="line.179"></a> +<FONT color="green">180</FONT> <a name="line.180"></a> +<FONT color="green">181</FONT> }<a name="line.181"></a> +<FONT color="green">182</FONT> }<a name="line.182"></a> +<FONT color="green">183</FONT> <a name="line.183"></a> +<FONT color="green">184</FONT> @Test<a name="line.184"></a> +<FONT color="green">185</FONT> public void testSine() {<a name="line.185"></a> +<FONT color="green">186</FONT> DfpField field = new DfpField(30);<a name="line.186"></a> +<FONT color="green">187</FONT> FieldHermiteInterpolator<Dfp> interpolator = new FieldHermiteInterpolator<Dfp>();<a name="line.187"></a> +<FONT color="green">188</FONT> for (Dfp x = field.getZero(); x.getReal() < FastMath.PI; x = x.add(0.5)) {<a name="line.188"></a> +<FONT color="green">189</FONT> interpolator.addSamplePoint(x, new Dfp[] { x.sin() });<a name="line.189"></a> +<FONT color="green">190</FONT> }<a name="line.190"></a> +<FONT color="green">191</FONT> for (Dfp x = field.newDfp(0.1); x.getReal() < 2.9; x = x.add(0.01)) {<a name="line.191"></a> +<FONT color="green">192</FONT> Dfp y = interpolator.value(x)[0];<a name="line.192"></a> +<FONT color="green">193</FONT> Assert.assertEquals( x.sin().getReal(), y.getReal(), 3.5e-5);<a name="line.193"></a> +<FONT color="green">194</FONT> }<a name="line.194"></a> +<FONT color="green">195</FONT> }<a name="line.195"></a> +<FONT color="green">196</FONT> <a name="line.196"></a> +<FONT color="green">197</FONT> @Test<a name="line.197"></a> +<FONT color="green">198</FONT> public void testSquareRoot() {<a name="line.198"></a> +<FONT color="green">199</FONT> DfpField field = new DfpField(30);<a name="line.199"></a> +<FONT color="green">200</FONT> FieldHermiteInterpolator<Dfp> interpolator = new FieldHermiteInterpolator<Dfp>();<a name="line.200"></a> +<FONT color="green">201</FONT> for (Dfp x = field.getOne(); x.getReal() < 3.6; x = x.add(0.5)) {<a name="line.201"></a> +<FONT color="green">202</FONT> interpolator.addSamplePoint(x, new Dfp[] { x.sqrt() });<a name="line.202"></a> +<FONT color="green">203</FONT> }<a name="line.203"></a> +<FONT color="green">204</FONT> for (Dfp x = field.newDfp(1.1); x.getReal() < 3.5; x = x.add(0.01)) {<a name="line.204"></a> +<FONT color="green">205</FONT> Dfp y = interpolator.value(x)[0];<a name="line.205"></a> +<FONT color="green">206</FONT> Assert.assertEquals(x.sqrt().getReal(), y.getReal(), 1.5e-4);<a name="line.206"></a> +<FONT color="green">207</FONT> }<a name="line.207"></a> +<FONT color="green">208</FONT> }<a name="line.208"></a> +<FONT color="green">209</FONT> <a name="line.209"></a> +<FONT color="green">210</FONT> @Test<a name="line.210"></a> +<FONT color="green">211</FONT> public void testWikipedia() {<a name="line.211"></a> +<FONT color="green">212</FONT> // this test corresponds to the example from Wikipedia page:<a name="line.212"></a> +<FONT color="green">213</FONT> // http://en.wikipedia.org/wiki/Hermite_interpolation<a name="line.213"></a> +<FONT color="green">214</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.214"></a> +<FONT color="green">215</FONT> interpolator.addSamplePoint(new BigFraction(-1),<a name="line.215"></a> +<FONT color="green">216</FONT> new BigFraction[] { new BigFraction( 2) },<a name="line.216"></a> +<FONT color="green">217</FONT> new BigFraction[] { new BigFraction(-8) },<a name="line.217"></a> +<FONT color="green">218</FONT> new BigFraction[] { new BigFraction(56) });<a name="line.218"></a> +<FONT color="green">219</FONT> interpolator.addSamplePoint(new BigFraction( 0),<a name="line.219"></a> +<FONT color="green">220</FONT> new BigFraction[] { new BigFraction( 1) },<a name="line.220"></a> +<FONT color="green">221</FONT> new BigFraction[] { new BigFraction( 0) },<a name="line.221"></a> +<FONT color="green">222</FONT> new BigFraction[] { new BigFraction( 0) });<a name="line.222"></a> +<FONT color="green">223</FONT> interpolator.addSamplePoint(new BigFraction( 1),<a name="line.223"></a> +<FONT color="green">224</FONT> new BigFraction[] { new BigFraction( 2) },<a name="line.224"></a> +<FONT color="green">225</FONT> new BigFraction[] { new BigFraction( 8) },<a name="line.225"></a> +<FONT color="green">226</FONT> new BigFraction[] { new BigFraction(56) });<a name="line.226"></a> +<FONT color="green">227</FONT> for (BigFraction x = new BigFraction(-1); x.doubleValue() <= 1.0; x = x.add(new BigFraction(1, 8))) {<a name="line.227"></a> +<FONT color="green">228</FONT> BigFraction y = interpolator.value(x)[0];<a name="line.228"></a> +<FONT color="green">229</FONT> BigFraction x2 = x.multiply(x);<a name="line.229"></a> +<FONT color="green">230</FONT> BigFraction x4 = x2.multiply(x2);<a name="line.230"></a> +<FONT color="green">231</FONT> BigFraction x8 = x4.multiply(x4);<a name="line.231"></a> +<FONT color="green">232</FONT> Assert.assertEquals(x8.add(new BigFraction(1)), y);<a name="line.232"></a> +<FONT color="green">233</FONT> }<a name="line.233"></a> +<FONT color="green">234</FONT> }<a name="line.234"></a> +<FONT color="green">235</FONT> <a name="line.235"></a> +<FONT color="green">236</FONT> @Test<a name="line.236"></a> +<FONT color="green">237</FONT> public void testOnePointParabola() {<a name="line.237"></a> +<FONT color="green">238</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.238"></a> +<FONT color="green">239</FONT> interpolator.addSamplePoint(new BigFraction(0),<a name="line.239"></a> +<FONT color="green">240</FONT> new BigFraction[] { new BigFraction(1) },<a name="line.240"></a> +<FONT color="green">241</FONT> new BigFraction[] { new BigFraction(1) },<a name="line.241"></a> +<FONT color="green">242</FONT> new BigFraction[] { new BigFraction(2) });<a name="line.242"></a> +<FONT color="green">243</FONT> for (BigFraction x = new BigFraction(-1); x.doubleValue() <= 1.0; x = x.add(new BigFraction(1, 8))) {<a name="line.243"></a> +<FONT color="green">244</FONT> BigFraction y = interpolator.value(x)[0];<a name="line.244"></a> +<FONT color="green">245</FONT> Assert.assertEquals(BigFraction.ONE.add(x.multiply(BigFraction.ONE.add(x))), y);<a name="line.245"></a> +<FONT color="green">246</FONT> }<a name="line.246"></a> +<FONT color="green">247</FONT> }<a name="line.247"></a> +<FONT color="green">248</FONT> <a name="line.248"></a> +<FONT color="green">249</FONT> private PolynomialFunction randomPolynomial(int degree, Random random) {<a name="line.249"></a> +<FONT color="green">250</FONT> double[] coeff = new double[ 1 + degree];<a name="line.250"></a> +<FONT color="green">251</FONT> for (int j = 0; j < degree; ++j) {<a name="line.251"></a> +<FONT color="green">252</FONT> coeff[j] = random.nextDouble();<a name="line.252"></a> +<FONT color="green">253</FONT> }<a name="line.253"></a> +<FONT color="green">254</FONT> return new PolynomialFunction(coeff);<a name="line.254"></a> +<FONT color="green">255</FONT> }<a name="line.255"></a> +<FONT color="green">256</FONT> <a name="line.256"></a> +<FONT color="green">257</FONT> @Test(expected=NoDataException.class)<a name="line.257"></a> +<FONT color="green">258</FONT> public void testEmptySampleValue() {<a name="line.258"></a> +<FONT color="green">259</FONT> new FieldHermiteInterpolator<BigFraction>().value(BigFraction.ZERO);<a name="line.259"></a> +<FONT color="green">260</FONT> }<a name="line.260"></a> +<FONT color="green">261</FONT> <a name="line.261"></a> +<FONT color="green">262</FONT> @Test(expected=NoDataException.class)<a name="line.262"></a> +<FONT color="green">263</FONT> public void testEmptySampleDerivative() {<a name="line.263"></a> +<FONT color="green">264</FONT> new FieldHermiteInterpolator<BigFraction>().derivatives(BigFraction.ZERO, 1);<a name="line.264"></a> +<FONT color="green">265</FONT> }<a name="line.265"></a> +<FONT color="green">266</FONT> <a name="line.266"></a> +<FONT color="green">267</FONT> @Test(expected=IllegalArgumentException.class)<a name="line.267"></a> +<FONT color="green">268</FONT> public void testDuplicatedAbscissa() {<a name="line.268"></a> +<FONT color="green">269</FONT> FieldHermiteInterpolator<BigFraction> interpolator = new FieldHermiteInterpolator<BigFraction>();<a name="line.269"></a> +<FONT color="green">270</FONT> interpolator.addSamplePoint(new BigFraction(1), new BigFraction[] { new BigFraction(0) });<a name="line.270"></a> +<FONT color="green">271</FONT> interpolator.addSamplePoint(new BigFraction(1), new BigFraction[] { new BigFraction(1) });<a name="line.271"></a> +<FONT color="green">272</FONT> }<a name="line.272"></a> +<FONT color="green">273</FONT> <a name="line.273"></a> +<FONT color="green">274</FONT> }<a name="line.274"></a> +<FONT color="green">275</FONT> <a name="line.275"></a> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +</PRE> +</BODY> +</HTML> Propchange: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolatorTest.html ------------------------------------------------------------------------------ svn:eol-style = native Propchange: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/analysis/interpolation/FieldHermiteInterpolatorTest.html ------------------------------------------------------------------------------ svn:keywords = Author Date Id Revision Modified: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.TestComplex.html ============================================================================== --- websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.TestComplex.html (original) +++ websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.TestComplex.html Sat Apr 6 23:42:01 2013 @@ -30,7 +30,7 @@ <FONT color="green">027</FONT> <a name="line.27"></a> <FONT color="green">028</FONT> <a name="line.28"></a> <FONT color="green">029</FONT> /**<a name="line.29"></a> -<FONT color="green">030</FONT> * @version $Id: ComplexTest.java 1244107 2012-02-14 16:17:55Z erans $<a name="line.30"></a> +<FONT color="green">030</FONT> * @version $Id: ComplexTest.java 1459927 2013-03-22 18:55:58Z luc $<a name="line.30"></a> <FONT color="green">031</FONT> */<a name="line.31"></a> <FONT color="green">032</FONT> public class ComplexTest {<a name="line.32"></a> <FONT color="green">033</FONT> <a name="line.33"></a> @@ -334,7 +334,7 @@ <FONT color="green">331</FONT> <a name="line.331"></a> <FONT color="green">332</FONT> @Test<a name="line.332"></a> <FONT color="green">333</FONT> public void testReciprocalZero() {<a name="line.333"></a> -<FONT color="green">334</FONT> Assert.assertEquals(Complex.ZERO.reciprocal(), Complex.NaN);<a name="line.334"></a> +<FONT color="green">334</FONT> Assert.assertEquals(Complex.ZERO.reciprocal(), Complex.INF);<a name="line.334"></a> <FONT color="green">335</FONT> }<a name="line.335"></a> <FONT color="green">336</FONT> <a name="line.336"></a> <FONT color="green">337</FONT> @Test<a name="line.337"></a> Modified: websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.html ============================================================================== --- websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.html (original) +++ websites/production/commons/content/proper/commons-math/testapidocs/src-html/org/apache/commons/math3/complex/ComplexTest.html Sat Apr 6 23:42:01 2013 @@ -30,7 +30,7 @@ <FONT color="green">027</FONT> <a name="line.27"></a> <FONT color="green">028</FONT> <a name="line.28"></a> <FONT color="green">029</FONT> /**<a name="line.29"></a> -<FONT color="green">030</FONT> * @version $Id: ComplexTest.java 1244107 2012-02-14 16:17:55Z erans $<a name="line.30"></a> +<FONT color="green">030</FONT> * @version $Id: ComplexTest.java 1459927 2013-03-22 18:55:58Z luc $<a name="line.30"></a> <FONT color="green">031</FONT> */<a name="line.31"></a> <FONT color="green">032</FONT> public class ComplexTest {<a name="line.32"></a> <FONT color="green">033</FONT> <a name="line.33"></a> @@ -334,7 +334,7 @@ <FONT color="green">331</FONT> <a name="line.331"></a> <FONT color="green">332</FONT> @Test<a name="line.332"></a> <FONT color="green">333</FONT> public void testReciprocalZero() {<a name="line.333"></a> -<FONT color="green">334</FONT> Assert.assertEquals(Complex.ZERO.reciprocal(), Complex.NaN);<a name="line.334"></a> +<FONT color="green">334</FONT> Assert.assertEquals(Complex.ZERO.reciprocal(), Complex.INF);<a name="line.334"></a> <FONT color="green">335</FONT> }<a name="line.335"></a> <FONT color="green">336</FONT> <a name="line.336"></a> <FONT color="green">337</FONT> @Test<a name="line.337"></a>