{"id":5459,"date":"2014-05-15T13:38:53","date_gmt":"2014-05-15T12:38:53","guid":{"rendered":"http:\/\/www.walkingrandomly.com\/?p=5459"},"modified":"2014-05-15T13:38:53","modified_gmt":"2014-05-15T12:38:53","slug":"mark-24-of-nag-c-numerical-library-released","status":"publish","type":"post","link":"https:\/\/walkingrandomly.com\/?p=5459","title":{"rendered":"Mark 24 of NAG C numerical library released"},"content":{"rendered":"<p>I&#8217;ve been a user and supporter of the commercial numerical libraries from <a href=\"http:\/\/www.nag.co.uk\/\">NAG<\/a> for several years now, using them in MATLAB, Fortran, C and <a href=\"http:\/\/www.nag.co.uk\/python.asp\">Python<\/a> among others. \u00a0They recently updated their <a href=\"http:\/\/www.nag.co.uk\/numeric\/CL\/CLdescription.asp\">C library to version 24<\/a> which now includes 1516 functions apparently.<\/p>\n<p>NAG&#8217;s routines are fast, accurate, extremely well supported and often based on cutting edge numerical research (I know this because academics at my University, <a href=\"http:\/\/www.manchester.ac.uk\/\">The University of Manchester<\/a>, is responsible for some of said research). I often <a href=\"https:\/\/www.walkingrandomly.com\/?p=3898\">use functions from the NAG C library in MATLAB mex routine<\/a>s in order to help speed up researcher&#8217;s code.<\/p>\n<p>Here&#8217;s some of the new functionality in Mark 24. \u00a0A full list of functions is available at\u00a0<a href=\"http:\/\/www.nag.co.uk\/numeric\/CL\/nagdoc_cl24\/html\/FRONTMATTER\/manconts.html\">http:\/\/www.nag.co.uk\/numeric\/CL\/nagdoc_cl24\/html\/FRONTMATTER\/manconts.html<\/a><\/p>\n<p>\u2022 Hypergeometric function (1f1 and 2f1)<br \/>\n\u2022 Nearest Correlation Matrix<br \/>\n\u2022 Elementwise weighted nearest correlation matrix<br \/>\n\u2022 Wavelet Transforms &amp;\u00a0FFTs<br \/>\n<em>\u00a0 \u00a0 <i>\u2014<\/i>Three dimensional discrete single level and multi-level wavelet transforms<\/em><i><br \/>\n<em>\u00a0 \u00a0 <i>\u2014<\/i>Fast Fourier Transforms (FFTs)\u00a0 for two dimensional and three dimensional real data<\/em><br \/>\n<\/i>\u2022 Matrix Functions<br \/>\n<em>\u00a0 <i>\u2014<\/i>Matrix square roots and general powers<\/em><i><br \/>\n<em>\u00a0 <i>\u2014<\/i>Matrix exponentials (Schur-Parlett)<\/em><br \/>\n<em>\u00a0 <i>\u2014<\/i>Fr\u00e9chet Derivative<\/em><br \/>\n<em>\u00a0 <i>\u2014<\/i>Calculation of condition numbers<\/em><br \/>\n<\/i>\u2022 Interpolation<br \/>\n<em>\u2014 Interpolation for 5D and higher dimensions<\/em><br \/>\n\u2022 Optimization<br \/>\n<em>\u00a0<i>\u2014\u00a0<\/i>Local optimization: Non-negative least squares<\/em><i><br \/>\n<em>\u00a0 <i>\u2014<\/i>Global optimization: Multi-start versions of general nonlinear programming and least squares routines<\/em><br \/>\n<\/i>\u2022 Random Number Generatorss<br \/>\n<em>\u2014 Brownian bridge and random fields<\/em><br \/>\n\u2022\u00a0Statistics<br \/>\n<em>\u2014 Gaussian mixture model<\/em><i><br \/>\n<em>\u2014 Best subsets of given size (branch and bound )<\/em><br \/>\n<em>\u2014 Vectorized probabilities and probability density functions of distributions<\/em><br \/>\n<em>\u2014 Inhomogeneous time series analysis, moving averages<\/em><br \/>\n<em>\u2014 Routines that combines two sums of squares matrices to allow large datasets to be summarised<\/em><\/i><br \/>\n\u2022 Data fitting<br \/>\n<em>\u00a0<i>\u2014<\/i>Fit of 2D scattered data by two-stage approximation (suitable for large datasets)<\/em><i><br \/>\n<\/i>\u2022 Quadrature<br \/>\n<em>\u00a0 \u2014 1D adaptive for badly-behaved integrals<\/em><br \/>\n\u2022 Sparse eigenproblem<br \/>\n<em>\u00a0 \u2014 Driver for real general matrix, driver for banded complex eigenproblem<\/em><i><br \/>\n<em>\u00a0 \u2014 Real and complex quadratic eigenvalue problems<\/em><\/i><br \/>\n\u2022 Sparse linear systems<br \/>\n<em>\u00a0 \u00a0\u2014 block diagonal pre-conditioners and solvers<\/em><br \/>\n\u2022 ODE solvers<br \/>\n<em>\u00a0 \u00a0\u2014 Threadsafe initial value ODE solvers<\/em><br \/>\n\u2022 Volatility<br \/>\n<em>\u00a0 \u00a0\u2014 Heston model with term structure<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been a user and supporter of the commercial numerical libraries from NAG for several years now, using them in MATLAB, Fortran, C and Python among others. \u00a0They recently updated their C library to version 24 which now includes 1516 functions apparently. NAG&#8217;s routines are fast, accurate, extremely well supported and often based on cutting [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[28],"tags":[],"class_list":["post-5459","post","type-post","status-publish","format-standard","hentry","category-nag-library"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p3swhs-1q3","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5459"}],"version-history":[{"count":3,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5459\/revisions"}],"predecessor-version":[{"id":5462,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=\/wp\/v2\/posts\/5459\/revisions\/5462"}],"wp:attachment":[{"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/walkingrandomly.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}