Michael Thomas Flanagan's Java Scientific and Numerical Library Michael Thomas Flanagan's Java Scientific Library This page, and the links therein, describe the more general classes of a Java scientific and numerical library that were written by Michael Thomas Flanagan to support both his own research and his undergraduate programming courses and projects. As he has now retired it will be updated far less frequently. These general classes form a package entitled flanagan which may be downloaded as a jar file. Class List: List of all classes in the library with a short description and link to full documentation and source file for each class A to Z Directory: Directory of topics covered by the library Most Recent Update: 25 July 2020 Download instructions: How to download and instal the flanagan.jar package List of example programs Structure of the Package, flanagan. Also includes a list of the dates of the most recent revision of each class in the library. List of, and comment on, Arbitrary Precision methods Michael Thomas Flanagan's Home Page DOWNLOADING THE flanagan.jar FILE Permission to copy: A large number of individuals have requested copies of this library. Consequently I have made it available, as a jar file (see below), with the qualifation that it is written to suport a course that I lecture. Though I believe it is professionally written, it is not a commercial product and the methods are not necessarily as all embracing as might be found in a commercial product nor are they checked to be fault free in all possible foreseable situations as would be, or at least ought to be, in a commercial product; you use this library at your own risk and more formally: Permission to use, copy and modify this software and its documentation for NON-COMMERCIAL purposes is granted, without fee, provided that an acknowledgement to the author, Dr Michael Thomas Flanagan at www.ee.ucl.ac.uk/~mflanaga, appears in all copies and associated documentation or publications. Use for COMMERCIAL purposes is not permitted Public listing of the source codes on the internet is not permitted. Redistribution of the source codes or of the flanagan.jar file is not permitted. Redistribution in binary form of all or parts of these classes is not permitted. Dr Michael Thomas Flanagan makes no representations about the suitability or fitness of the software for any or for a particular purpose. Dr Michael Thomas Flanagan shall not be liable for any damages suffered as a result of using, modifying or distributing this software or its derivatives. Download instructions: Platform 8 version: Click here to download Platform 8 version of flanagan.jar Save as flanagan.jar. The current version of Java Platform 8 used in compiling the classes in flanagan.jar is jdk1.8.0. The flanagan.jar file size is about 1.2 MB - varying slightly with update. A tutorial on manipulating jar files may be found on http://download.oracle.com/javase/tutorial/deployment/jar/index.html A convenient use of this jar file is to place it in the appropriate folder so that it simply becomes a library that you may import when writing your code. For example an appropriate folder on a computer running a MicroSoft operating system, e.g. Windows 8, is to place it in ProgramFiles/Java/jdk1.x.y_z/jre/lib/ext, where jdk1.x.y_z is your version (appropriate values for .x and .y_z) of the Java Development Kit. You must also create an appropriate CLASSSPATH. If you are using a Microsoft operating system, e.g. Windows 8, and you have not done so already, create a CLASSPATH by going to the Control Panel, clicking on System, then clicking on Advanced, then clicking on Environmental Variables and then clicking on new in the upper section (User variables for ...). A dialog box will appear asking for a Variable name; type in CLASSPATH, and a Variable value; type in .\; followed by the path to flanagan.jar, e.g. .\;C:\Java\jdk1.8.0\jre\lib\ext\flanagan.jar. Return clicking on the OK boxes. Michael Thomas Flanagan can be contacted at: Dr Michael Thomas Flanagan Department of Electronic and Electrical Engineering UCL (University College London) Torrington Place London WC1E 7JE E-mail: m.flanagan@ucl.ac.uk LIST OF ALL CLASSES with links to documentation and source files Input and Output Db (Dialogue Box Input & Output) KeyboardInput PrintToScreen FileInput FileManipulate FileChooser MultipleFilesChooser FileNameSelector FileOutput DigiGraph (Graph Digitization) Graph Plotting PlotGraph Plotter PlotPoleZero Mathematical Functions, Physical Constants and Conversion Functions Fmath ArrayMaths VectorMaths Point Gradient DataType DeepCopy Conv (Conversions) TimeAndDate Statistical Functions & Extreme Distributions Stat ANOVA ProbabilityPlot Outliers Normality Scores Cronbach PCA RankAnalysis PsRandom BoxCox Random Numbers and Deviates (including extreme distribution deviates) PsRandom Error Propagation ErrorProp ComplexErrorProp Regression Regression ProbabilityPlot ImpedSpecRegression Data Smoothing CurveSmooth SurfaceSmooth ThreeDimensionalSmooth Optimisation Minimisation Maximisation Fourier Transform & Short-Time Fourier Transform Fourier Transform Numerical Integration Integration RungeKutta Interpolation CubicInterpolation CubicSpline CubicSplineFast BiCubicInterpolation BiCubicSpline BiCubicSplineFast BiCubicSplineFirstDerivative TriCubicInterpolation TriCubicSpline QuadriCubicSpline PolyCubicSpline PolyCubicSplineFast LinearInterpolation PolylineSimplification Root Searching RealRoot ComplexPoly Matrices Matrix ComplexMatrix PhasorMatrix RankAnalysis Complex Arithmetic Complex ComplexMatrix ComplexPoly ComplexErrorProp Phasor PhasorMatrix Polynomials Polynomial ComplexPoly Circuits Impedance TransmissionLine SurfaceStripLine CoaxialLine ParallelPlateLine TwoWireLine Phasor PhasorMatrix Impedance Spectroscopy ImpedSpecRegression ImpedSpecSimulation Optics Reflectivity PrismCoupler GratingCoupler PlanarWaveguide RefractiveIndex Biological Applications ImmunoAssay Donnan GouyChapmanStern Ionic radii IonicRadii Physical Properties of Some Aqueous Solutions Water Saline Sucrose Pva Utilities Chars Strings Control & System Engineering BlackBox PropIntDeriv (PID) PropInt (PI) PropDeriv (PD) Prop FirstOrder SecondOrder Compensator LowPassPassive HighPassPassive DelayLine ZeroOrderHold Transducer AtoD DtoA This page was prepared by Dr Michael Thomas Flanagan