*********** TrigFunc.nns is a NeuNet Pro Sample File *********** This file contains special properties that allow NeuNet Pro to recognize it as authorized NeuNet sample data. Anyone using the unlicensed version of NeuNet Pro is welcome to experiment with this sample data. Please do not modify this file, or it will lose its status as authorized sample data. For further information about Neunet Pro and additional sample data, please visit the NeuNet Pro website at http://www.cormactech.com/neunet All of this data has been created by CorMac Technologies Inc. CorMac Technologies Inc. does not guarantee the accuracy of the data. This data is intended solely for experimental purposes. *************** More about the TrigFunc Data ******************* TrigFunc.nns is a database containing six fields and 10,000 records: [IndexCounter1] is the primary key index, containing the row number. This field is not related to the function. [Sign] is a function input, +1 or -1, random [X] is a function input, .00002 to .002, log random [F] is a function input, 100 to 100,000 (frequency), log random [R] is a function input = 25 * sqrt(F) [Func] = Sign * {1 - Exp[-RX * (Cos(RX) + Sin(RX))]} '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' A basic program to generate 10,000 random examples of this function ' Doug McCormack, January 18, 1999 ' CorMac Technolgies Inc. http://www.cormactech.com '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Dim X As Double ' X varies between .00002 and .002 Dim F As Double ' Frequency varies between 100 and 100,000 Dim R As Double ' R = 25 * Sqrt(Frequency) Dim RX As Double ' RX = R * X Dim Sign As Integer ' +1 or -1 Dim Func As Double: ' Func = Sign * {1 - Exp[-RX * (Cos(RX) + Sin(RX))]} Dim i As Integer Dim LogMax As Double, LogMin As Double, LogRange As Double 'OUTPUT 10,000 RANDOM PATTERNS Open "OutFile.txt" For Output As #1 Print #1, "Sign, X, R, FREQ, FUNC" For i = 1 To 10000 'PICK F LOGARITHMICALLY DISTRIBUTED FROM 100 TO 100,000 LogMin = Log(100): LogMax = Log(100000): LogRange = (LogMax - LogMin) F = Exp(LogMin + Rnd() * LogRange) 'PICK X LOGARITHMICALLY DISTRIBUTED FROM .00002 TO .002 LogMin = Log(0.00002): LogMax = Log(0.002): LogRange = (LogMax - LogMin) X = Exp(LogMin + Rnd() * LogRange) 'CALCULATE RX AS PART OF FUNCTION R = 25 * Sqr(F): RX = R * X 'PICK SIGN RANDOMLY -1 or +1 Sign = 1 If Rnd() <.5 Then Sign = -1 'CALCULATE THE FUNCTION Func = Sign * (1 - Exp(-RX) * (Cos(RX) + Sin(RX))) 'WRITE NEURAL NETWORK PATTERN AS NEW ROW IN TEXT FILE Print #1, Format$(Sign, " 0;-0"); ","; Format$(X, "0.#######"); ","; _ Format$(R, "0.#######"); ","; Format$(F, "0.#######"); ","; _ Format$(Func, "0.#######") Next i Close End