comparison libs/commons-math-2.1/docs/apidocs/src-html/org/apache/commons/math/transform/RealTransformer.html @ 13:cbf34dd4d7e6

commons-math-2.1 added
author dwinter
date Tue, 04 Jan 2011 10:02:07 +0100
parents
children
comparison
equal deleted inserted replaced
12:970d26a94fb7 13:cbf34dd4d7e6
1 <HTML>
2 <BODY BGCOLOR="white">
3 <PRE>
4 <FONT color="green">001</FONT> /*<a name="line.1"></a>
5 <FONT color="green">002</FONT> * Licensed to the Apache Software Foundation (ASF) under one or more<a name="line.2"></a>
6 <FONT color="green">003</FONT> * contributor license agreements. See the NOTICE file distributed with<a name="line.3"></a>
7 <FONT color="green">004</FONT> * this work for additional information regarding copyright ownership.<a name="line.4"></a>
8 <FONT color="green">005</FONT> * The ASF licenses this file to You under the Apache License, Version 2.0<a name="line.5"></a>
9 <FONT color="green">006</FONT> * (the "License"); you may not use this file except in compliance with<a name="line.6"></a>
10 <FONT color="green">007</FONT> * the License. You may obtain a copy of the License at<a name="line.7"></a>
11 <FONT color="green">008</FONT> *<a name="line.8"></a>
12 <FONT color="green">009</FONT> * http://www.apache.org/licenses/LICENSE-2.0<a name="line.9"></a>
13 <FONT color="green">010</FONT> *<a name="line.10"></a>
14 <FONT color="green">011</FONT> * Unless required by applicable law or agreed to in writing, software<a name="line.11"></a>
15 <FONT color="green">012</FONT> * distributed under the License is distributed on an "AS IS" BASIS,<a name="line.12"></a>
16 <FONT color="green">013</FONT> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<a name="line.13"></a>
17 <FONT color="green">014</FONT> * See the License for the specific language governing permissions and<a name="line.14"></a>
18 <FONT color="green">015</FONT> * limitations under the License.<a name="line.15"></a>
19 <FONT color="green">016</FONT> */<a name="line.16"></a>
20 <FONT color="green">017</FONT> package org.apache.commons.math.transform;<a name="line.17"></a>
21 <FONT color="green">018</FONT> <a name="line.18"></a>
22 <FONT color="green">019</FONT> import org.apache.commons.math.FunctionEvaluationException;<a name="line.19"></a>
23 <FONT color="green">020</FONT> import org.apache.commons.math.analysis.UnivariateRealFunction;<a name="line.20"></a>
24 <FONT color="green">021</FONT> <a name="line.21"></a>
25 <FONT color="green">022</FONT> /**<a name="line.22"></a>
26 <FONT color="green">023</FONT> * Interface for one-dimensional data sets transformations producing real results.<a name="line.23"></a>
27 <FONT color="green">024</FONT> * &lt;p&gt;Such transforms include {@link FastSineTransformer sine transform},<a name="line.24"></a>
28 <FONT color="green">025</FONT> * {@link FastCosineTransformer cosine transform} or {@link<a name="line.25"></a>
29 <FONT color="green">026</FONT> * FastHadamardTransformer Hadamard transform}. {@link FastFourierTransformer<a name="line.26"></a>
30 <FONT color="green">027</FONT> * Fourier transform} is of a different kind and does not implement this<a name="line.27"></a>
31 <FONT color="green">028</FONT> * interface since it produces {@link org.apache.commons.math.complex.Complex complex}<a name="line.28"></a>
32 <FONT color="green">029</FONT> * results instead of real ones.<a name="line.29"></a>
33 <FONT color="green">030</FONT> * &lt;/p&gt;<a name="line.30"></a>
34 <FONT color="green">031</FONT> * @version $Revision: 811786 $ $Date: 2009-09-06 05:36:08 -0400 (Sun, 06 Sep 2009) $<a name="line.31"></a>
35 <FONT color="green">032</FONT> * @since 2.0<a name="line.32"></a>
36 <FONT color="green">033</FONT> */<a name="line.33"></a>
37 <FONT color="green">034</FONT> public interface RealTransformer {<a name="line.34"></a>
38 <FONT color="green">035</FONT> <a name="line.35"></a>
39 <FONT color="green">036</FONT> /**<a name="line.36"></a>
40 <FONT color="green">037</FONT> * Transform the given real data set.<a name="line.37"></a>
41 <FONT color="green">038</FONT> * @param f the real data array to be transformed (signal)<a name="line.38"></a>
42 <FONT color="green">039</FONT> * @return the real transformed array (spectrum)<a name="line.39"></a>
43 <FONT color="green">040</FONT> * @throws IllegalArgumentException if any parameters are invalid<a name="line.40"></a>
44 <FONT color="green">041</FONT> */<a name="line.41"></a>
45 <FONT color="green">042</FONT> double[] transform(double f[])<a name="line.42"></a>
46 <FONT color="green">043</FONT> throws IllegalArgumentException;<a name="line.43"></a>
47 <FONT color="green">044</FONT> <a name="line.44"></a>
48 <FONT color="green">045</FONT> /**<a name="line.45"></a>
49 <FONT color="green">046</FONT> * Transform the given real function, sampled on the given interval.<a name="line.46"></a>
50 <FONT color="green">047</FONT> * @param f the function to be sampled and transformed<a name="line.47"></a>
51 <FONT color="green">048</FONT> * @param min the lower bound for the interval<a name="line.48"></a>
52 <FONT color="green">049</FONT> * @param max the upper bound for the interval<a name="line.49"></a>
53 <FONT color="green">050</FONT> * @param n the number of sample points<a name="line.50"></a>
54 <FONT color="green">051</FONT> * @return the real transformed array<a name="line.51"></a>
55 <FONT color="green">052</FONT> * @throws FunctionEvaluationException if function cannot be evaluated<a name="line.52"></a>
56 <FONT color="green">053</FONT> * at some point<a name="line.53"></a>
57 <FONT color="green">054</FONT> * @throws IllegalArgumentException if any parameters are invalid<a name="line.54"></a>
58 <FONT color="green">055</FONT> */<a name="line.55"></a>
59 <FONT color="green">056</FONT> double[] transform(UnivariateRealFunction f, double min, double max, int n)<a name="line.56"></a>
60 <FONT color="green">057</FONT> throws FunctionEvaluationException, IllegalArgumentException;<a name="line.57"></a>
61 <FONT color="green">058</FONT> <a name="line.58"></a>
62 <FONT color="green">059</FONT> /**<a name="line.59"></a>
63 <FONT color="green">060</FONT> * Inversely transform the given real data set.<a name="line.60"></a>
64 <FONT color="green">061</FONT> * @param f the real data array to be inversely transformed (spectrum)<a name="line.61"></a>
65 <FONT color="green">062</FONT> * @return the real inversely transformed array (signal)<a name="line.62"></a>
66 <FONT color="green">063</FONT> * @throws IllegalArgumentException if any parameters are invalid<a name="line.63"></a>
67 <FONT color="green">064</FONT> */<a name="line.64"></a>
68 <FONT color="green">065</FONT> double[] inversetransform(double f[])<a name="line.65"></a>
69 <FONT color="green">066</FONT> throws IllegalArgumentException;<a name="line.66"></a>
70 <FONT color="green">067</FONT> <a name="line.67"></a>
71 <FONT color="green">068</FONT> /**<a name="line.68"></a>
72 <FONT color="green">069</FONT> * Inversely transform the given real function, sampled on the given interval.<a name="line.69"></a>
73 <FONT color="green">070</FONT> * @param f the function to be sampled and inversely transformed<a name="line.70"></a>
74 <FONT color="green">071</FONT> * @param min the lower bound for the interval<a name="line.71"></a>
75 <FONT color="green">072</FONT> * @param max the upper bound for the interval<a name="line.72"></a>
76 <FONT color="green">073</FONT> * @param n the number of sample points<a name="line.73"></a>
77 <FONT color="green">074</FONT> * @return the real inversely transformed array<a name="line.74"></a>
78 <FONT color="green">075</FONT> * @throws FunctionEvaluationException if function cannot be evaluated<a name="line.75"></a>
79 <FONT color="green">076</FONT> * at some point<a name="line.76"></a>
80 <FONT color="green">077</FONT> * @throws IllegalArgumentException if any parameters are invalid<a name="line.77"></a>
81 <FONT color="green">078</FONT> */<a name="line.78"></a>
82 <FONT color="green">079</FONT> double[] inversetransform(UnivariateRealFunction f, double min, double max, int n)<a name="line.79"></a>
83 <FONT color="green">080</FONT> throws FunctionEvaluationException, IllegalArgumentException;<a name="line.80"></a>
84 <FONT color="green">081</FONT> <a name="line.81"></a>
85 <FONT color="green">082</FONT> }<a name="line.82"></a>
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146 </PRE>
147 </BODY>
148 </HTML>