updated 3rd party libs: CLapack 3.1.1.1 => 3.2.1, zlib 1.2.3 => 1.2.5, libpng 1.2.x => 1.4.3, libtiff 3.7.x => 3.9.4. fixed many 64-bit related VS2010 warnings
This commit is contained in:
parent
0c9eca7922
commit
f78a3b4cc1
2
3rdparty/flann/util/allocator.h
vendored
2
3rdparty/flann/util/allocator.h
vendored
@ -177,7 +177,7 @@ public:
|
|||||||
template <typename T>
|
template <typename T>
|
||||||
T* allocate(size_t count = 1)
|
T* allocate(size_t count = 1)
|
||||||
{
|
{
|
||||||
T* mem = (T*) this->malloc(sizeof(T)*count);
|
T* mem = (T*) this->malloc((int)(sizeof(T)*count));
|
||||||
return mem;
|
return mem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
3rdparty/flann/util/result_set.h
vendored
2
3rdparty/flann/util/result_set.h
vendored
@ -281,7 +281,7 @@ public:
|
|||||||
|
|
||||||
int size() const
|
int size() const
|
||||||
{
|
{
|
||||||
return items.size();
|
return (int)items.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool full() const
|
bool full() const
|
||||||
|
2
3rdparty/flann/util/saving.cpp
vendored
2
3rdparty/flann/util/saving.cpp
vendored
@ -56,7 +56,7 @@ void save_header(FILE* stream, const NNIndex& index)
|
|||||||
IndexHeader load_header(FILE* stream)
|
IndexHeader load_header(FILE* stream)
|
||||||
{
|
{
|
||||||
IndexHeader header;
|
IndexHeader header;
|
||||||
int read_size = fread(&header,sizeof(header),1,stream);
|
int read_size = (int)fread(&header,sizeof(header),1,stream);
|
||||||
|
|
||||||
if (read_size!=1) {
|
if (read_size!=1) {
|
||||||
throw FLANNException("Invalid index file, cannot read");
|
throw FLANNException("Invalid index file, cannot read");
|
||||||
|
2
3rdparty/flann/util/saving.h
vendored
2
3rdparty/flann/util/saving.h
vendored
@ -77,7 +77,7 @@ void save_value(FILE* stream, const T& value, int count = 1)
|
|||||||
template<typename T>
|
template<typename T>
|
||||||
void load_value(FILE* stream, T& value, int count = 1)
|
void load_value(FILE* stream, T& value, int count = 1)
|
||||||
{
|
{
|
||||||
int read_cnt = fread(&value, sizeof(value),count, stream);
|
int read_cnt = (int)fread(&value, sizeof(value),count, stream);
|
||||||
if (read_cnt!=count) {
|
if (read_cnt!=count) {
|
||||||
throw FLANNException("Cannot read from file");
|
throw FLANNException("Cannot read from file");
|
||||||
}
|
}
|
||||||
|
939
3rdparty/include/clapack.h
vendored
939
3rdparty/include/clapack.h
vendored
File diff suppressed because it is too large
Load Diff
2348
3rdparty/include/png.h
vendored
2348
3rdparty/include/png.h
vendored
File diff suppressed because it is too large
Load Diff
864
3rdparty/include/pngconf.h
vendored
864
3rdparty/include/pngconf.h
vendored
File diff suppressed because it is too large
Load Diff
151
3rdparty/include/tiff.h
vendored
151
3rdparty/include/tiff.h
vendored
@ -1,4 +1,4 @@
|
|||||||
/* $Id: tiff.h,v 1.3 2005-06-17 13:57:03 vp153 Exp $ */
|
/* $Id: tiff.h,v 1.43.2.1 2010-06-08 18:50:43 bfriesen Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1988-1997 Sam Leffler
|
* Copyright (c) 1988-1997 Sam Leffler
|
||||||
@ -26,6 +26,9 @@
|
|||||||
|
|
||||||
#ifndef _TIFF_
|
#ifndef _TIFF_
|
||||||
#define _TIFF_
|
#define _TIFF_
|
||||||
|
|
||||||
|
#include "tiffconf.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Tag Image File Format (TIFF)
|
* Tag Image File Format (TIFF)
|
||||||
*
|
*
|
||||||
@ -40,32 +43,15 @@
|
|||||||
* (http://partners.adobe.com/asn/developer/PDFS/TN/TIFF6.pdf)
|
* (http://partners.adobe.com/asn/developer/PDFS/TN/TIFF6.pdf)
|
||||||
*
|
*
|
||||||
* For Big TIFF design notes see the following link
|
* For Big TIFF design notes see the following link
|
||||||
* http://gdal.maptools.org/twiki/bin/view/libtiff/BigTIFFDesign
|
* http://www.remotesensing.org/libtiff/bigtiffdesign.html
|
||||||
*/
|
*/
|
||||||
#define TIFF_VERSION 42
|
#define TIFF_VERSION 42
|
||||||
#define TIFF_BIGTIFF_VERSION 43
|
#define TIFF_BIGTIFF_VERSION 43
|
||||||
|
|
||||||
#define TIFF_BIGENDIAN 0x4d4d
|
#define TIFF_BIGENDIAN 0x4d4d
|
||||||
#define TIFF_LITTLEENDIAN 0x4949
|
#define TIFF_LITTLEENDIAN 0x4949
|
||||||
|
#define MDI_LITTLEENDIAN 0x5045
|
||||||
/*
|
#define MDI_BIGENDIAN 0x4550
|
||||||
* The so called TIFF types conflict with definitions from inttypes.h
|
|
||||||
* included from sys/types.h on AIX (at least using VisualAge compiler).
|
|
||||||
* We try to work around this by detecting this case. Defining
|
|
||||||
* _TIFF_DATA_TYPEDEFS_ short circuits the later definitions in tiff.h, and
|
|
||||||
* we will in the holes not provided for by inttypes.h.
|
|
||||||
*
|
|
||||||
* See http://bugzilla.remotesensing.org/show_bug.cgi?id=39
|
|
||||||
*/
|
|
||||||
#if defined(_H_INTTYPES) && defined(_ALL_SOURCE) && defined(USING_VISUALAGE)
|
|
||||||
|
|
||||||
#define _TIFF_DATA_TYPEDEFS_
|
|
||||||
typedef unsigned char uint8;
|
|
||||||
typedef unsigned short uint16;
|
|
||||||
typedef unsigned int uint32;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Intrinsic data types required by the file format:
|
* Intrinsic data types required by the file format:
|
||||||
*
|
*
|
||||||
@ -74,23 +60,27 @@ typedef unsigned int uint32;
|
|||||||
* 32-bit quantities int32/uint32
|
* 32-bit quantities int32/uint32
|
||||||
* strings unsigned char*
|
* strings unsigned char*
|
||||||
*/
|
*/
|
||||||
#ifndef _TIFF_DATA_TYPEDEFS_
|
|
||||||
#define _TIFF_DATA_TYPEDEFS_
|
|
||||||
|
|
||||||
|
#ifndef HAVE_INT8
|
||||||
typedef signed char int8; /* NB: non-ANSI compilers may not grok */
|
typedef signed char int8; /* NB: non-ANSI compilers may not grok */
|
||||||
|
#endif
|
||||||
typedef unsigned char uint8;
|
typedef unsigned char uint8;
|
||||||
|
#ifndef HAVE_INT16
|
||||||
typedef short int16;
|
typedef short int16;
|
||||||
|
#endif
|
||||||
typedef unsigned short uint16; /* sizeof (uint16) must == 2 */
|
typedef unsigned short uint16; /* sizeof (uint16) must == 2 */
|
||||||
#if defined(__alpha) || (defined(_MIPS_SZLONG) && _MIPS_SZLONG == 64) || defined(__LP64__) || defined(__arch64__)
|
#if SIZEOF_INT == 4
|
||||||
|
#ifndef HAVE_INT32
|
||||||
typedef int int32;
|
typedef int int32;
|
||||||
|
#endif
|
||||||
typedef unsigned int uint32; /* sizeof (uint32) must == 4 */
|
typedef unsigned int uint32; /* sizeof (uint32) must == 4 */
|
||||||
#else
|
#elif SIZEOF_LONG == 4
|
||||||
|
#ifndef HAVE_INT32
|
||||||
typedef long int32;
|
typedef long int32;
|
||||||
|
#endif
|
||||||
typedef unsigned long uint32; /* sizeof (uint32) must == 4 */
|
typedef unsigned long uint32; /* sizeof (uint32) must == 4 */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* _TIFF_DATA_TYPEDEFS_ */
|
|
||||||
|
|
||||||
/* For TIFFReassignTagToIgnore */
|
/* For TIFFReassignTagToIgnore */
|
||||||
enum TIFFIgnoreSense /* IGNORE tag table */
|
enum TIFFIgnoreSense /* IGNORE tag table */
|
||||||
{
|
{
|
||||||
@ -289,6 +279,9 @@ typedef enum {
|
|||||||
#define TIFFTAG_ARTIST 315 /* creator of image */
|
#define TIFFTAG_ARTIST 315 /* creator of image */
|
||||||
#define TIFFTAG_HOSTCOMPUTER 316 /* machine where created */
|
#define TIFFTAG_HOSTCOMPUTER 316 /* machine where created */
|
||||||
#define TIFFTAG_PREDICTOR 317 /* prediction scheme w/ LZW */
|
#define TIFFTAG_PREDICTOR 317 /* prediction scheme w/ LZW */
|
||||||
|
#define PREDICTOR_NONE 1 /* no prediction scheme used */
|
||||||
|
#define PREDICTOR_HORIZONTAL 2 /* horizontal differencing */
|
||||||
|
#define PREDICTOR_FLOATINGPOINT 3 /* floating point predictor */
|
||||||
#define TIFFTAG_WHITEPOINT 318 /* image white point */
|
#define TIFFTAG_WHITEPOINT 318 /* image white point */
|
||||||
#define TIFFTAG_PRIMARYCHROMATICITIES 319 /* !primary chromaticities */
|
#define TIFFTAG_PRIMARYCHROMATICITIES 319 /* !primary chromaticities */
|
||||||
#define TIFFTAG_COLORMAP 320 /* RGB map for pallette image */
|
#define TIFFTAG_COLORMAP 320 /* RGB map for pallette image */
|
||||||
@ -415,12 +408,15 @@ typedef enum {
|
|||||||
#define TIFFTAG_IT8CMYKEQUIVALENT 34032 /* CMYK color equivalents */
|
#define TIFFTAG_IT8CMYKEQUIVALENT 34032 /* CMYK color equivalents */
|
||||||
/* tags 34232-34236 are private tags registered to Texas Instruments */
|
/* tags 34232-34236 are private tags registered to Texas Instruments */
|
||||||
#define TIFFTAG_FRAMECOUNT 34232 /* Sequence Frame Count */
|
#define TIFFTAG_FRAMECOUNT 34232 /* Sequence Frame Count */
|
||||||
/* tag 34750 is a private tag registered to Adobe? */
|
|
||||||
#define TIFFTAG_ICCPROFILE 34675 /* ICC profile data */
|
|
||||||
/* tag 34377 is private tag registered to Adobe for PhotoShop */
|
/* tag 34377 is private tag registered to Adobe for PhotoShop */
|
||||||
#define TIFFTAG_PHOTOSHOP 34377
|
#define TIFFTAG_PHOTOSHOP 34377
|
||||||
|
/* tags 34665, 34853 and 40965 are documented in EXIF specification */
|
||||||
|
#define TIFFTAG_EXIFIFD 34665 /* Pointer to EXIF private directory */
|
||||||
|
/* tag 34750 is a private tag registered to Adobe? */
|
||||||
|
#define TIFFTAG_ICCPROFILE 34675 /* ICC profile data */
|
||||||
/* tag 34750 is a private tag registered to Pixel Magic */
|
/* tag 34750 is a private tag registered to Pixel Magic */
|
||||||
#define TIFFTAG_JBIGOPTIONS 34750 /* JBIG options */
|
#define TIFFTAG_JBIGOPTIONS 34750 /* JBIG options */
|
||||||
|
#define TIFFTAG_GPSIFD 34853 /* Pointer to GPS private directory */
|
||||||
/* tags 34908-34914 are private tags registered to SGI */
|
/* tags 34908-34914 are private tags registered to SGI */
|
||||||
#define TIFFTAG_FAXRECVPARAMS 34908 /* encoded Class 2 ses. parms */
|
#define TIFFTAG_FAXRECVPARAMS 34908 /* encoded Class 2 ses. parms */
|
||||||
#define TIFFTAG_FAXSUBADDRESS 34909 /* received SubAddr string */
|
#define TIFFTAG_FAXSUBADDRESS 34909 /* received SubAddr string */
|
||||||
@ -430,9 +426,8 @@ typedef enum {
|
|||||||
#define TIFFTAG_STONITS 37439 /* Sample value to Nits */
|
#define TIFFTAG_STONITS 37439 /* Sample value to Nits */
|
||||||
/* tag 34929 is a private tag registered to FedEx */
|
/* tag 34929 is a private tag registered to FedEx */
|
||||||
#define TIFFTAG_FEDEX_EDR 34929 /* unknown use */
|
#define TIFFTAG_FEDEX_EDR 34929 /* unknown use */
|
||||||
/* tag 65535 is an undefined tag used by Eastman Kodak */
|
#define TIFFTAG_INTEROPERABILITYIFD 40965 /* Pointer to Interoperability private directory */
|
||||||
#define TIFFTAG_DCSHUESHIFTVALUES 65535 /* hue shift correction data */
|
/* Adobe Digital Negative (DNG) format tags */
|
||||||
/* Adobe Digital Negative format tags */
|
|
||||||
#define TIFFTAG_DNGVERSION 50706 /* &DNG version number */
|
#define TIFFTAG_DNGVERSION 50706 /* &DNG version number */
|
||||||
#define TIFFTAG_DNGBACKWARDVERSION 50707 /* &DNG compatibility version */
|
#define TIFFTAG_DNGBACKWARDVERSION 50707 /* &DNG compatibility version */
|
||||||
#define TIFFTAG_UNIQUECAMERAMODEL 50708 /* &name for the camera model */
|
#define TIFFTAG_UNIQUECAMERAMODEL 50708 /* &name for the camera model */
|
||||||
@ -485,9 +480,11 @@ typedef enum {
|
|||||||
in the red/green rows */
|
in the red/green rows */
|
||||||
#define TIFFTAG_LINEARRESPONSELIMIT 50734 /* &non-linear encoding range */
|
#define TIFFTAG_LINEARRESPONSELIMIT 50734 /* &non-linear encoding range */
|
||||||
#define TIFFTAG_CAMERASERIALNUMBER 50735 /* &camera's serial number */
|
#define TIFFTAG_CAMERASERIALNUMBER 50735 /* &camera's serial number */
|
||||||
|
#define TIFFTAG_LENSINFO 50736 /* info about the lens */
|
||||||
#define TIFFTAG_CHROMABLURRADIUS 50737 /* &chroma blur radius */
|
#define TIFFTAG_CHROMABLURRADIUS 50737 /* &chroma blur radius */
|
||||||
#define TIFFTAG_ANTIALIASSTRENGTH 50738 /* &relative strength of the
|
#define TIFFTAG_ANTIALIASSTRENGTH 50738 /* &relative strength of the
|
||||||
camera's anti-alias filter */
|
camera's anti-alias filter */
|
||||||
|
#define TIFFTAG_SHADOWSCALE 50739 /* &used by Adobe Camera Raw */
|
||||||
#define TIFFTAG_DNGPRIVATEDATA 50740 /* &manufacturer's private data */
|
#define TIFFTAG_DNGPRIVATEDATA 50740 /* &manufacturer's private data */
|
||||||
#define TIFFTAG_MAKERNOTESAFETY 50741 /* &whether the EXIF MakerNote
|
#define TIFFTAG_MAKERNOTESAFETY 50741 /* &whether the EXIF MakerNote
|
||||||
tag is safe to preserve
|
tag is safe to preserve
|
||||||
@ -496,6 +493,23 @@ typedef enum {
|
|||||||
#define TIFFTAG_CALIBRATIONILLUMINANT1 50778 /* &illuminant 1 */
|
#define TIFFTAG_CALIBRATIONILLUMINANT1 50778 /* &illuminant 1 */
|
||||||
#define TIFFTAG_CALIBRATIONILLUMINANT2 50779 /* &illuminant 2 */
|
#define TIFFTAG_CALIBRATIONILLUMINANT2 50779 /* &illuminant 2 */
|
||||||
#define TIFFTAG_BESTQUALITYSCALE 50780 /* &best quality multiplier */
|
#define TIFFTAG_BESTQUALITYSCALE 50780 /* &best quality multiplier */
|
||||||
|
#define TIFFTAG_RAWDATAUNIQUEID 50781 /* &unique identifier for
|
||||||
|
the raw image data */
|
||||||
|
#define TIFFTAG_ORIGINALRAWFILENAME 50827 /* &file name of the original
|
||||||
|
raw file */
|
||||||
|
#define TIFFTAG_ORIGINALRAWFILEDATA 50828 /* &contents of the original
|
||||||
|
raw file */
|
||||||
|
#define TIFFTAG_ACTIVEAREA 50829 /* &active (non-masked) pixels
|
||||||
|
of the sensor */
|
||||||
|
#define TIFFTAG_MASKEDAREAS 50830 /* &list of coordinates
|
||||||
|
of fully masked pixels */
|
||||||
|
#define TIFFTAG_ASSHOTICCPROFILE 50831 /* &these two tags used to */
|
||||||
|
#define TIFFTAG_ASSHOTPREPROFILEMATRIX 50832 /* map cameras's color space
|
||||||
|
into ICC profile space */
|
||||||
|
#define TIFFTAG_CURRENTICCPROFILE 50833 /* & */
|
||||||
|
#define TIFFTAG_CURRENTPREPROFILEMATRIX 50834 /* & */
|
||||||
|
/* tag 65535 is an undefined tag used by Eastman Kodak */
|
||||||
|
#define TIFFTAG_DCSHUESHIFTVALUES 65535 /* hue shift correction data */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The following are ``pseudo tags'' that can be used to control
|
* The following are ``pseudo tags'' that can be used to control
|
||||||
@ -562,6 +576,79 @@ typedef enum {
|
|||||||
#define TIFFTAG_SGILOGENCODE 65561 /* SGILog data encoding control*/
|
#define TIFFTAG_SGILOGENCODE 65561 /* SGILog data encoding control*/
|
||||||
#define SGILOGENCODE_NODITHER 0 /* do not dither encoded values*/
|
#define SGILOGENCODE_NODITHER 0 /* do not dither encoded values*/
|
||||||
#define SGILOGENCODE_RANDITHER 1 /* randomly dither encd values */
|
#define SGILOGENCODE_RANDITHER 1 /* randomly dither encd values */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* EXIF tags
|
||||||
|
*/
|
||||||
|
#define EXIFTAG_EXPOSURETIME 33434 /* Exposure time */
|
||||||
|
#define EXIFTAG_FNUMBER 33437 /* F number */
|
||||||
|
#define EXIFTAG_EXPOSUREPROGRAM 34850 /* Exposure program */
|
||||||
|
#define EXIFTAG_SPECTRALSENSITIVITY 34852 /* Spectral sensitivity */
|
||||||
|
#define EXIFTAG_ISOSPEEDRATINGS 34855 /* ISO speed rating */
|
||||||
|
#define EXIFTAG_OECF 34856 /* Optoelectric conversion
|
||||||
|
factor */
|
||||||
|
#define EXIFTAG_EXIFVERSION 36864 /* Exif version */
|
||||||
|
#define EXIFTAG_DATETIMEORIGINAL 36867 /* Date and time of original
|
||||||
|
data generation */
|
||||||
|
#define EXIFTAG_DATETIMEDIGITIZED 36868 /* Date and time of digital
|
||||||
|
data generation */
|
||||||
|
#define EXIFTAG_COMPONENTSCONFIGURATION 37121 /* Meaning of each component */
|
||||||
|
#define EXIFTAG_COMPRESSEDBITSPERPIXEL 37122 /* Image compression mode */
|
||||||
|
#define EXIFTAG_SHUTTERSPEEDVALUE 37377 /* Shutter speed */
|
||||||
|
#define EXIFTAG_APERTUREVALUE 37378 /* Aperture */
|
||||||
|
#define EXIFTAG_BRIGHTNESSVALUE 37379 /* Brightness */
|
||||||
|
#define EXIFTAG_EXPOSUREBIASVALUE 37380 /* Exposure bias */
|
||||||
|
#define EXIFTAG_MAXAPERTUREVALUE 37381 /* Maximum lens aperture */
|
||||||
|
#define EXIFTAG_SUBJECTDISTANCE 37382 /* Subject distance */
|
||||||
|
#define EXIFTAG_METERINGMODE 37383 /* Metering mode */
|
||||||
|
#define EXIFTAG_LIGHTSOURCE 37384 /* Light source */
|
||||||
|
#define EXIFTAG_FLASH 37385 /* Flash */
|
||||||
|
#define EXIFTAG_FOCALLENGTH 37386 /* Lens focal length */
|
||||||
|
#define EXIFTAG_SUBJECTAREA 37396 /* Subject area */
|
||||||
|
#define EXIFTAG_MAKERNOTE 37500 /* Manufacturer notes */
|
||||||
|
#define EXIFTAG_USERCOMMENT 37510 /* User comments */
|
||||||
|
#define EXIFTAG_SUBSECTIME 37520 /* DateTime subseconds */
|
||||||
|
#define EXIFTAG_SUBSECTIMEORIGINAL 37521 /* DateTimeOriginal subseconds */
|
||||||
|
#define EXIFTAG_SUBSECTIMEDIGITIZED 37522 /* DateTimeDigitized subseconds */
|
||||||
|
#define EXIFTAG_FLASHPIXVERSION 40960 /* Supported Flashpix version */
|
||||||
|
#define EXIFTAG_COLORSPACE 40961 /* Color space information */
|
||||||
|
#define EXIFTAG_PIXELXDIMENSION 40962 /* Valid image width */
|
||||||
|
#define EXIFTAG_PIXELYDIMENSION 40963 /* Valid image height */
|
||||||
|
#define EXIFTAG_RELATEDSOUNDFILE 40964 /* Related audio file */
|
||||||
|
#define EXIFTAG_FLASHENERGY 41483 /* Flash energy */
|
||||||
|
#define EXIFTAG_SPATIALFREQUENCYRESPONSE 41484 /* Spatial frequency response */
|
||||||
|
#define EXIFTAG_FOCALPLANEXRESOLUTION 41486 /* Focal plane X resolution */
|
||||||
|
#define EXIFTAG_FOCALPLANEYRESOLUTION 41487 /* Focal plane Y resolution */
|
||||||
|
#define EXIFTAG_FOCALPLANERESOLUTIONUNIT 41488 /* Focal plane resolution unit */
|
||||||
|
#define EXIFTAG_SUBJECTLOCATION 41492 /* Subject location */
|
||||||
|
#define EXIFTAG_EXPOSUREINDEX 41493 /* Exposure index */
|
||||||
|
#define EXIFTAG_SENSINGMETHOD 41495 /* Sensing method */
|
||||||
|
#define EXIFTAG_FILESOURCE 41728 /* File source */
|
||||||
|
#define EXIFTAG_SCENETYPE 41729 /* Scene type */
|
||||||
|
#define EXIFTAG_CFAPATTERN 41730 /* CFA pattern */
|
||||||
|
#define EXIFTAG_CUSTOMRENDERED 41985 /* Custom image processing */
|
||||||
|
#define EXIFTAG_EXPOSUREMODE 41986 /* Exposure mode */
|
||||||
|
#define EXIFTAG_WHITEBALANCE 41987 /* White balance */
|
||||||
|
#define EXIFTAG_DIGITALZOOMRATIO 41988 /* Digital zoom ratio */
|
||||||
|
#define EXIFTAG_FOCALLENGTHIN35MMFILM 41989 /* Focal length in 35 mm film */
|
||||||
|
#define EXIFTAG_SCENECAPTURETYPE 41990 /* Scene capture type */
|
||||||
|
#define EXIFTAG_GAINCONTROL 41991 /* Gain control */
|
||||||
|
#define EXIFTAG_CONTRAST 41992 /* Contrast */
|
||||||
|
#define EXIFTAG_SATURATION 41993 /* Saturation */
|
||||||
|
#define EXIFTAG_SHARPNESS 41994 /* Sharpness */
|
||||||
|
#define EXIFTAG_DEVICESETTINGDESCRIPTION 41995 /* Device settings description */
|
||||||
|
#define EXIFTAG_SUBJECTDISTANCERANGE 41996 /* Subject distance range */
|
||||||
|
#define EXIFTAG_GAINCONTROL 41991 /* Gain control */
|
||||||
|
#define EXIFTAG_GAINCONTROL 41991 /* Gain control */
|
||||||
|
#define EXIFTAG_IMAGEUNIQUEID 42016 /* Unique image ID */
|
||||||
|
|
||||||
#endif /* _TIFF_ */
|
#endif /* _TIFF_ */
|
||||||
|
|
||||||
/* vim: set ts=8 sts=8 sw=8 noet: */
|
/* vim: set ts=8 sts=8 sw=8 noet: */
|
||||||
|
/*
|
||||||
|
* Local Variables:
|
||||||
|
* mode: c
|
||||||
|
* c-basic-offset: 8
|
||||||
|
* fill-column: 78
|
||||||
|
* End:
|
||||||
|
*/
|
||||||
|
@ -1,12 +1,41 @@
|
|||||||
/* libtiff/tiffconf.h. Generated by configure. */
|
|
||||||
/*
|
/*
|
||||||
Configuration defines for installed libtiff.
|
Configuration defines for installed libtiff.
|
||||||
Editing this file no longer has any effect on the libtiff build!
|
This file maintained for backward compatibility. Do not use definitions
|
||||||
|
from this file in your programs.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _TIFFCONF_
|
#ifndef _TIFFCONF_
|
||||||
#define _TIFFCONF_
|
#define _TIFFCONF_
|
||||||
|
|
||||||
|
/* Define to 1 if the system has the type `int16'. */
|
||||||
|
/* #undef HAVE_INT16 */
|
||||||
|
|
||||||
|
/* Define to 1 if the system has the type `int32'. */
|
||||||
|
/* #undef HAVE_INT32 */
|
||||||
|
|
||||||
|
/* Define to 1 if the system has the type `int8'. */
|
||||||
|
/* #undef HAVE_INT8 */
|
||||||
|
|
||||||
|
/* The size of a `int', as computed by sizeof. */
|
||||||
|
#define SIZEOF_INT 4
|
||||||
|
|
||||||
|
/* The size of a `long', as computed by sizeof. */
|
||||||
|
#define SIZEOF_LONG 4
|
||||||
|
|
||||||
|
/* Signed 64-bit type formatter */
|
||||||
|
#define TIFF_INT64_FORMAT "%I64d"
|
||||||
|
|
||||||
|
/* Signed 64-bit type */
|
||||||
|
#define TIFF_INT64_T signed __int64
|
||||||
|
|
||||||
|
/* Unsigned 64-bit type formatter */
|
||||||
|
#define TIFF_UINT64_FORMAT "%I64u"
|
||||||
|
|
||||||
|
/* Unsigned 64-bit type */
|
||||||
|
#define TIFF_UINT64_T unsigned __int64
|
||||||
|
|
||||||
|
/* Compatibility stuff. */
|
||||||
|
|
||||||
/* Define as 0 or 1 according to the floating point format suported by the
|
/* Define as 0 or 1 according to the floating point format suported by the
|
||||||
machine */
|
machine */
|
||||||
#define HAVE_IEEEFP 1
|
#define HAVE_IEEEFP 1
|
||||||
@ -22,7 +51,7 @@
|
|||||||
#define CCITT_SUPPORT 1
|
#define CCITT_SUPPORT 1
|
||||||
|
|
||||||
/* Support JPEG compression (requires IJG JPEG library) */
|
/* Support JPEG compression (requires IJG JPEG library) */
|
||||||
#define JPEG_SUPPORT 1
|
/* #undef JPEG_SUPPORT */
|
||||||
|
|
||||||
/* Support LogLuv high dynamic range encoding */
|
/* Support LogLuv high dynamic range encoding */
|
||||||
#define LOGLUV_SUPPORT 1
|
#define LOGLUV_SUPPORT 1
|
||||||
@ -41,13 +70,13 @@
|
|||||||
#define PACKBITS_SUPPORT 1
|
#define PACKBITS_SUPPORT 1
|
||||||
|
|
||||||
/* Support Pixar log-format algorithm (requires Zlib) */
|
/* Support Pixar log-format algorithm (requires Zlib) */
|
||||||
#define PIXARLOG_SUPPORT 1
|
/* #undef PIXARLOG_SUPPORT */
|
||||||
|
|
||||||
/* Support ThunderScan 4-bit RLE algorithm */
|
/* Support ThunderScan 4-bit RLE algorithm */
|
||||||
#define THUNDER_SUPPORT 1
|
#define THUNDER_SUPPORT 1
|
||||||
|
|
||||||
/* Support Deflate compression */
|
/* Support Deflate compression */
|
||||||
#define ZIP_SUPPORT 1
|
/* #undef ZIP_SUPPORT */
|
||||||
|
|
||||||
/* Support strip chopping (whether or not to convert single-strip uncompressed
|
/* Support strip chopping (whether or not to convert single-strip uncompressed
|
||||||
images to mutiple strips of ~8Kb to reduce memory usage) */
|
images to mutiple strips of ~8Kb to reduce memory usage) */
|
||||||
@ -78,3 +107,10 @@
|
|||||||
#define IPTC_SUPPORT
|
#define IPTC_SUPPORT
|
||||||
|
|
||||||
#endif /* _TIFFCONF_ */
|
#endif /* _TIFFCONF_ */
|
||||||
|
/*
|
||||||
|
* Local Variables:
|
||||||
|
* mode: c
|
||||||
|
* c-basic-offset: 8
|
||||||
|
* fill-column: 78
|
||||||
|
* End:
|
||||||
|
*/
|
353
3rdparty/include/tiffio.h
vendored
353
3rdparty/include/tiffio.h
vendored
@ -1,4 +1,4 @@
|
|||||||
/* $Id: tiffio.h,v 1.3 2005-06-17 13:57:03 vp153 Exp $ */
|
/* $Id: tiffio.h,v 1.56.2.4 2010-06-08 18:50:43 bfriesen Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 1988-1997 Sam Leffler
|
* Copyright (c) 1988-1997 Sam Leffler
|
||||||
@ -61,8 +61,9 @@ typedef struct tiff TIFF;
|
|||||||
typedef uint32 ttag_t; /* directory tag */
|
typedef uint32 ttag_t; /* directory tag */
|
||||||
typedef uint16 tdir_t; /* directory index */
|
typedef uint16 tdir_t; /* directory index */
|
||||||
typedef uint16 tsample_t; /* sample number */
|
typedef uint16 tsample_t; /* sample number */
|
||||||
typedef uint32 tstrip_t; /* strip number */
|
typedef uint32 tstrile_t; /* strip or tile number */
|
||||||
typedef uint32 ttile_t; /* tile number */
|
typedef tstrile_t tstrip_t; /* strip number */
|
||||||
|
typedef tstrile_t ttile_t; /* tile number */
|
||||||
typedef int32 tsize_t; /* i/o size in bytes */
|
typedef int32 tsize_t; /* i/o size in bytes */
|
||||||
typedef void* tdata_t; /* image data ref */
|
typedef void* tdata_t; /* image data ref */
|
||||||
typedef uint32 toff_t; /* file offset */
|
typedef uint32 toff_t; /* file offset */
|
||||||
@ -75,17 +76,17 @@ typedef uint32 toff_t; /* file offset */
|
|||||||
* On windows you should define USE_WIN32_FILEIO if you are using tif_win32.c
|
* On windows you should define USE_WIN32_FILEIO if you are using tif_win32.c
|
||||||
* or AVOID_WIN32_FILEIO if you are using something else (like tif_unix.c).
|
* or AVOID_WIN32_FILEIO if you are using something else (like tif_unix.c).
|
||||||
*
|
*
|
||||||
* By default tif_win32.c is assumed on windows if not using the cygwin
|
* By default tif_unix.c is assumed.
|
||||||
* environment.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
|
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
|
||||||
# if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILIO)
|
# if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO)
|
||||||
# define USE_WIN32_FILEIO
|
# define AVOID_WIN32_FILEIO
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(USE_WIN32_FILEIO)
|
#if defined(USE_WIN32_FILEIO)
|
||||||
|
# define VC_EXTRALEAN
|
||||||
# include <windows.h>
|
# include <windows.h>
|
||||||
# ifdef __WIN32__
|
# ifdef __WIN32__
|
||||||
DECLARE_HANDLE(thandle_t); /* Win32 file handle */
|
DECLARE_HANDLE(thandle_t); /* Win32 file handle */
|
||||||
@ -96,10 +97,6 @@ typedef HFILE thandle_t; /* client data handle */
|
|||||||
typedef void* thandle_t; /* client data handle */
|
typedef void* thandle_t; /* client data handle */
|
||||||
#endif /* USE_WIN32_FILEIO */
|
#endif /* USE_WIN32_FILEIO */
|
||||||
|
|
||||||
#ifndef NULL
|
|
||||||
# define NULL (void *)0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Flags to pass to TIFFPrintDirectory to control
|
* Flags to pass to TIFFPrintDirectory to control
|
||||||
* printing of data structures that are potentially
|
* printing of data structures that are potentially
|
||||||
@ -207,11 +204,12 @@ struct _TIFFRGBAImage {
|
|||||||
uint16* bluecmap;
|
uint16* bluecmap;
|
||||||
/* get image data routine */
|
/* get image data routine */
|
||||||
int (*get)(TIFFRGBAImage*, uint32*, uint32, uint32);
|
int (*get)(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||||
|
/* put decoded strip/tile */
|
||||||
union {
|
union {
|
||||||
void (*any)(TIFFRGBAImage*);
|
void (*any)(TIFFRGBAImage*);
|
||||||
tileContigRoutine contig;
|
tileContigRoutine contig;
|
||||||
tileSeparateRoutine separate;
|
tileSeparateRoutine separate;
|
||||||
} put; /* put decoded strip/tile */
|
} put;
|
||||||
TIFFRGBValue* Map; /* sample mapping array */
|
TIFFRGBValue* Map; /* sample mapping array */
|
||||||
uint32** BWmap; /* black&white map */
|
uint32** BWmap; /* black&white map */
|
||||||
uint32** PALmap; /* palette image map */
|
uint32** PALmap; /* palette image map */
|
||||||
@ -253,10 +251,15 @@ typedef struct {
|
|||||||
#define LOGLUV_PUBLIC 1
|
#define LOGLUV_PUBLIC 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !defined(__GNUC__) && !defined(__attribute__)
|
||||||
|
# define __attribute__(x) /*nothing*/
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(c_plusplus) || defined(__cplusplus)
|
#if defined(c_plusplus) || defined(__cplusplus)
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
typedef void (*TIFFErrorHandler)(const char*, const char*, va_list);
|
typedef void (*TIFFErrorHandler)(const char*, const char*, va_list);
|
||||||
|
typedef void (*TIFFErrorHandlerExt)(thandle_t, const char*, const char*, va_list);
|
||||||
typedef tsize_t (*TIFFReadWriteProc)(thandle_t, tdata_t, tsize_t);
|
typedef tsize_t (*TIFFReadWriteProc)(thandle_t, tdata_t, tsize_t);
|
||||||
typedef toff_t (*TIFFSeekProc)(thandle_t, toff_t, int);
|
typedef toff_t (*TIFFSeekProc)(thandle_t, toff_t, int);
|
||||||
typedef int (*TIFFCloseProc)(thandle_t);
|
typedef int (*TIFFCloseProc)(thandle_t);
|
||||||
@ -271,7 +274,11 @@ extern const TIFFCodec* TIFFFindCODEC(uint16);
|
|||||||
extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
|
||||||
extern void TIFFUnRegisterCODEC(TIFFCodec*);
|
extern void TIFFUnRegisterCODEC(TIFFCodec*);
|
||||||
extern int TIFFIsCODECConfigured(uint16);
|
extern int TIFFIsCODECConfigured(uint16);
|
||||||
extern TIFFCodec* TIFFGetConfiguredCODECs();
|
extern TIFFCodec* TIFFGetConfiguredCODECs(void);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Auxiliary functions.
|
||||||
|
*/
|
||||||
|
|
||||||
extern tdata_t _TIFFmalloc(tsize_t);
|
extern tdata_t _TIFFmalloc(tsize_t);
|
||||||
extern tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
extern tdata_t _TIFFrealloc(tdata_t, tsize_t);
|
||||||
@ -280,157 +287,6 @@ extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
|
|||||||
extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
|
||||||
extern void _TIFFfree(tdata_t);
|
extern void _TIFFfree(tdata_t);
|
||||||
|
|
||||||
extern void TIFFCleanup(TIFF*);
|
|
||||||
extern void TIFFClose(TIFF*);
|
|
||||||
extern int TIFFFlush(TIFF*);
|
|
||||||
extern int TIFFFlushData(TIFF*);
|
|
||||||
extern int TIFFGetField(TIFF*, ttag_t, ...);
|
|
||||||
extern int TIFFVGetField(TIFF*, ttag_t, va_list);
|
|
||||||
extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
|
||||||
extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
|
||||||
extern int TIFFReadDirectory(TIFF*);
|
|
||||||
extern tsize_t TIFFScanlineSize(TIFF*);
|
|
||||||
extern tsize_t TIFFRasterScanlineSize(TIFF*);
|
|
||||||
extern tsize_t TIFFStripSize(TIFF*);
|
|
||||||
extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
|
||||||
extern tsize_t TIFFVStripSize(TIFF*, uint32);
|
|
||||||
extern tsize_t TIFFTileRowSize(TIFF*);
|
|
||||||
extern tsize_t TIFFTileSize(TIFF*);
|
|
||||||
extern tsize_t TIFFVTileSize(TIFF*, uint32);
|
|
||||||
extern uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
|
||||||
extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
|
||||||
extern int TIFFFileno(TIFF*);
|
|
||||||
extern int TIFFSetFileno(TIFF*, int);
|
|
||||||
extern thandle_t TIFFClientdata(TIFF*);
|
|
||||||
extern thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
|
||||||
extern int TIFFGetMode(TIFF*);
|
|
||||||
extern int TIFFSetMode(TIFF*, int);
|
|
||||||
extern int TIFFIsTiled(TIFF*);
|
|
||||||
extern int TIFFIsByteSwapped(TIFF*);
|
|
||||||
extern int TIFFIsUpSampled(TIFF*);
|
|
||||||
extern int TIFFIsMSB2LSB(TIFF*);
|
|
||||||
extern int TIFFIsBigEndian(TIFF*);
|
|
||||||
extern TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
|
||||||
extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
|
||||||
extern TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
|
||||||
extern TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
|
||||||
extern TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
|
||||||
extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
|
||||||
extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
|
||||||
extern uint32 TIFFCurrentRow(TIFF*);
|
|
||||||
extern tdir_t TIFFCurrentDirectory(TIFF*);
|
|
||||||
extern tdir_t TIFFNumberOfDirectories(TIFF*);
|
|
||||||
extern uint32 TIFFCurrentDirOffset(TIFF*);
|
|
||||||
extern tstrip_t TIFFCurrentStrip(TIFF*);
|
|
||||||
extern ttile_t TIFFCurrentTile(TIFF*);
|
|
||||||
extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
|
||||||
extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
|
||||||
extern int TIFFSetupStrips(TIFF *);
|
|
||||||
extern int TIFFWriteCheck(TIFF*, int, const char *);
|
|
||||||
extern int TIFFCreateDirectory(TIFF*);
|
|
||||||
extern int TIFFLastDirectory(TIFF*);
|
|
||||||
extern int TIFFSetDirectory(TIFF*, tdir_t);
|
|
||||||
extern int TIFFSetSubDirectory(TIFF*, uint32);
|
|
||||||
extern int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
|
||||||
extern int TIFFSetField(TIFF*, ttag_t, ...);
|
|
||||||
extern int TIFFVSetField(TIFF*, ttag_t, va_list);
|
|
||||||
extern int TIFFWriteDirectory(TIFF *);
|
|
||||||
extern int TIFFCheckpointDirectory(TIFF *);
|
|
||||||
extern int TIFFRewriteDirectory(TIFF *);
|
|
||||||
extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
|
||||||
|
|
||||||
#if defined(c_plusplus) || defined(__cplusplus)
|
|
||||||
extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
|
||||||
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
|
||||||
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
|
||||||
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
|
||||||
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
|
||||||
int = ORIENTATION_BOTLEFT, int = 0);
|
|
||||||
#else
|
|
||||||
extern void TIFFPrintDirectory(TIFF*, FILE*, long);
|
|
||||||
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
|
||||||
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
|
||||||
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
|
||||||
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
|
||||||
extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
|
||||||
extern int TIFFRGBAImageOK(TIFF*, char [1024]);
|
|
||||||
extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
|
||||||
extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
|
||||||
extern void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
|
||||||
extern TIFF* TIFFOpen(const char*, const char*);
|
|
||||||
# ifdef __WIN32__
|
|
||||||
extern TIFF* TIFFOpenW(const wchar_t*, const char*);
|
|
||||||
# endif /* __WIN32__ */
|
|
||||||
extern TIFF* TIFFFdOpen(int, const char*, const char*);
|
|
||||||
extern TIFF* TIFFClientOpen(const char*, const char*,
|
|
||||||
thandle_t,
|
|
||||||
TIFFReadWriteProc, TIFFReadWriteProc,
|
|
||||||
TIFFSeekProc, TIFFCloseProc,
|
|
||||||
TIFFSizeProc,
|
|
||||||
TIFFMapFileProc, TIFFUnmapFileProc);
|
|
||||||
extern const char* TIFFFileName(TIFF*);
|
|
||||||
extern const char* TIFFSetFileName(TIFF*, const char *);
|
|
||||||
extern void TIFFError(const char*, const char*, ...);
|
|
||||||
extern void TIFFWarning(const char*, const char*, ...);
|
|
||||||
extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
|
||||||
extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
|
||||||
extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
|
||||||
extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
|
||||||
extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
|
||||||
extern ttile_t TIFFNumberOfTiles(TIFF*);
|
|
||||||
extern tsize_t TIFFReadTile(TIFF*,
|
|
||||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
|
||||||
extern tsize_t TIFFWriteTile(TIFF*,
|
|
||||||
tdata_t, uint32, uint32, uint32, tsample_t);
|
|
||||||
extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
|
||||||
extern tstrip_t TIFFNumberOfStrips(TIFF*);
|
|
||||||
extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
|
||||||
extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
|
||||||
extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
|
||||||
extern void TIFFSetWriteOffset(TIFF*, toff_t);
|
|
||||||
extern void TIFFSwabShort(uint16*);
|
|
||||||
extern void TIFFSwabLong(uint32*);
|
|
||||||
extern void TIFFSwabDouble(double*);
|
|
||||||
extern void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
|
||||||
extern void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
|
||||||
extern void TIFFSwabArrayOfDouble(double*, unsigned long);
|
|
||||||
extern void TIFFReverseBits(unsigned char *, unsigned long);
|
|
||||||
extern const unsigned char* TIFFGetBitRevTable(int);
|
|
||||||
|
|
||||||
#ifdef LOGLUV_PUBLIC
|
|
||||||
#define U_NEU 0.210526316
|
|
||||||
#define V_NEU 0.473684211
|
|
||||||
#define UVSCALE 410.
|
|
||||||
extern double LogL16toY(int);
|
|
||||||
extern double LogL10toY(int);
|
|
||||||
extern void XYZtoRGB24(float*, uint8*);
|
|
||||||
extern int uv_decode(double*, double*, int);
|
|
||||||
extern void LogLuv24toXYZ(uint32, float*);
|
|
||||||
extern void LogLuv32toXYZ(uint32, float*);
|
|
||||||
#if defined(c_plusplus) || defined(__cplusplus)
|
|
||||||
extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
|
||||||
extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
|
||||||
extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
|
||||||
extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
|
||||||
extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
|
||||||
#else
|
|
||||||
extern int LogL16fromY(double, int);
|
|
||||||
extern int LogL10fromY(double, int);
|
|
||||||
extern int uv_encode(double, double, int);
|
|
||||||
extern uint32 LogLuv24fromXYZ(float*, int);
|
|
||||||
extern uint32 LogLuv32fromXYZ(float*, int);
|
|
||||||
#endif
|
|
||||||
#endif /* LOGLUV_PUBLIC */
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Stuff, related to tag handling and creating custom tags.
|
** Stuff, related to tag handling and creating custom tags.
|
||||||
*/
|
*/
|
||||||
@ -482,6 +338,168 @@ extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
|
|||||||
extern void *TIFFGetClientInfo( TIFF *, const char * );
|
extern void *TIFFGetClientInfo( TIFF *, const char * );
|
||||||
extern void TIFFSetClientInfo( TIFF *, void *, const char * );
|
extern void TIFFSetClientInfo( TIFF *, void *, const char * );
|
||||||
|
|
||||||
|
extern void TIFFCleanup(TIFF*);
|
||||||
|
extern void TIFFClose(TIFF*);
|
||||||
|
extern int TIFFFlush(TIFF*);
|
||||||
|
extern int TIFFFlushData(TIFF*);
|
||||||
|
extern int TIFFGetField(TIFF*, ttag_t, ...);
|
||||||
|
extern int TIFFVGetField(TIFF*, ttag_t, va_list);
|
||||||
|
extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
|
||||||
|
extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
|
||||||
|
extern int TIFFReadDirectory(TIFF*);
|
||||||
|
extern int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[],
|
||||||
|
size_t);
|
||||||
|
extern int TIFFReadEXIFDirectory(TIFF*, toff_t);
|
||||||
|
extern tsize_t TIFFScanlineSize(TIFF*);
|
||||||
|
extern tsize_t TIFFOldScanlineSize(TIFF*);
|
||||||
|
extern tsize_t TIFFNewScanlineSize(TIFF*);
|
||||||
|
extern tsize_t TIFFRasterScanlineSize(TIFF*);
|
||||||
|
extern tsize_t TIFFStripSize(TIFF*);
|
||||||
|
extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
|
||||||
|
extern tsize_t TIFFVStripSize(TIFF*, uint32);
|
||||||
|
extern tsize_t TIFFTileRowSize(TIFF*);
|
||||||
|
extern tsize_t TIFFTileSize(TIFF*);
|
||||||
|
extern tsize_t TIFFVTileSize(TIFF*, uint32);
|
||||||
|
extern uint32 TIFFDefaultStripSize(TIFF*, uint32);
|
||||||
|
extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
|
||||||
|
extern int TIFFFileno(TIFF*);
|
||||||
|
extern int TIFFSetFileno(TIFF*, int);
|
||||||
|
extern thandle_t TIFFClientdata(TIFF*);
|
||||||
|
extern thandle_t TIFFSetClientdata(TIFF*, thandle_t);
|
||||||
|
extern int TIFFGetMode(TIFF*);
|
||||||
|
extern int TIFFSetMode(TIFF*, int);
|
||||||
|
extern int TIFFIsTiled(TIFF*);
|
||||||
|
extern int TIFFIsByteSwapped(TIFF*);
|
||||||
|
extern int TIFFIsUpSampled(TIFF*);
|
||||||
|
extern int TIFFIsMSB2LSB(TIFF*);
|
||||||
|
extern int TIFFIsBigEndian(TIFF*);
|
||||||
|
extern TIFFReadWriteProc TIFFGetReadProc(TIFF*);
|
||||||
|
extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*);
|
||||||
|
extern TIFFSeekProc TIFFGetSeekProc(TIFF*);
|
||||||
|
extern TIFFCloseProc TIFFGetCloseProc(TIFF*);
|
||||||
|
extern TIFFSizeProc TIFFGetSizeProc(TIFF*);
|
||||||
|
extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*);
|
||||||
|
extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);
|
||||||
|
extern uint32 TIFFCurrentRow(TIFF*);
|
||||||
|
extern tdir_t TIFFCurrentDirectory(TIFF*);
|
||||||
|
extern tdir_t TIFFNumberOfDirectories(TIFF*);
|
||||||
|
extern uint32 TIFFCurrentDirOffset(TIFF*);
|
||||||
|
extern tstrip_t TIFFCurrentStrip(TIFF*);
|
||||||
|
extern ttile_t TIFFCurrentTile(TIFF*);
|
||||||
|
extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||||
|
extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
|
||||||
|
extern int TIFFSetupStrips(TIFF *);
|
||||||
|
extern int TIFFWriteCheck(TIFF*, int, const char *);
|
||||||
|
extern void TIFFFreeDirectory(TIFF*);
|
||||||
|
extern int TIFFCreateDirectory(TIFF*);
|
||||||
|
extern int TIFFLastDirectory(TIFF*);
|
||||||
|
extern int TIFFSetDirectory(TIFF*, tdir_t);
|
||||||
|
extern int TIFFSetSubDirectory(TIFF*, uint32);
|
||||||
|
extern int TIFFUnlinkDirectory(TIFF*, tdir_t);
|
||||||
|
extern int TIFFSetField(TIFF*, ttag_t, ...);
|
||||||
|
extern int TIFFVSetField(TIFF*, ttag_t, va_list);
|
||||||
|
extern int TIFFWriteDirectory(TIFF *);
|
||||||
|
extern int TIFFCheckpointDirectory(TIFF *);
|
||||||
|
extern int TIFFRewriteDirectory(TIFF *);
|
||||||
|
extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
|
||||||
|
|
||||||
|
#if defined(c_plusplus) || defined(__cplusplus)
|
||||||
|
extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
|
||||||
|
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||||
|
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
|
||||||
|
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
|
||||||
|
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
|
||||||
|
int = ORIENTATION_BOTLEFT, int = 0);
|
||||||
|
#else
|
||||||
|
extern void TIFFPrintDirectory(TIFF*, FILE*, long);
|
||||||
|
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||||
|
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
|
||||||
|
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
|
||||||
|
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
|
||||||
|
extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
|
||||||
|
extern int TIFFRGBAImageOK(TIFF*, char [1024]);
|
||||||
|
extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
|
||||||
|
extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
|
||||||
|
extern void TIFFRGBAImageEnd(TIFFRGBAImage*);
|
||||||
|
extern TIFF* TIFFOpen(const char*, const char*);
|
||||||
|
# ifdef __WIN32__
|
||||||
|
extern TIFF* TIFFOpenW(const wchar_t*, const char*);
|
||||||
|
# endif /* __WIN32__ */
|
||||||
|
extern TIFF* TIFFFdOpen(int, const char*, const char*);
|
||||||
|
extern TIFF* TIFFClientOpen(const char*, const char*,
|
||||||
|
thandle_t,
|
||||||
|
TIFFReadWriteProc, TIFFReadWriteProc,
|
||||||
|
TIFFSeekProc, TIFFCloseProc,
|
||||||
|
TIFFSizeProc,
|
||||||
|
TIFFMapFileProc, TIFFUnmapFileProc);
|
||||||
|
extern const char* TIFFFileName(TIFF*);
|
||||||
|
extern const char* TIFFSetFileName(TIFF*, const char *);
|
||||||
|
extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||||
|
extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||||
|
extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3)));
|
||||||
|
extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4)));
|
||||||
|
extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
|
||||||
|
extern TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);
|
||||||
|
extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
|
||||||
|
extern TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);
|
||||||
|
extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
|
||||||
|
extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||||
|
extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
|
||||||
|
extern ttile_t TIFFNumberOfTiles(TIFF*);
|
||||||
|
extern tsize_t TIFFReadTile(TIFF*,
|
||||||
|
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||||
|
extern tsize_t TIFFWriteTile(TIFF*,
|
||||||
|
tdata_t, uint32, uint32, uint32, tsample_t);
|
||||||
|
extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
|
||||||
|
extern tstrip_t TIFFNumberOfStrips(TIFF*);
|
||||||
|
extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||||
|
extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
|
||||||
|
extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
|
||||||
|
extern void TIFFSetWriteOffset(TIFF*, toff_t);
|
||||||
|
extern void TIFFSwabShort(uint16*);
|
||||||
|
extern void TIFFSwabLong(uint32*);
|
||||||
|
extern void TIFFSwabDouble(double*);
|
||||||
|
extern void TIFFSwabArrayOfShort(uint16*, unsigned long);
|
||||||
|
extern void TIFFSwabArrayOfTriples(uint8*, unsigned long);
|
||||||
|
extern void TIFFSwabArrayOfLong(uint32*, unsigned long);
|
||||||
|
extern void TIFFSwabArrayOfDouble(double*, unsigned long);
|
||||||
|
extern void TIFFReverseBits(unsigned char *, unsigned long);
|
||||||
|
extern const unsigned char* TIFFGetBitRevTable(int);
|
||||||
|
|
||||||
|
#ifdef LOGLUV_PUBLIC
|
||||||
|
#define U_NEU 0.210526316
|
||||||
|
#define V_NEU 0.473684211
|
||||||
|
#define UVSCALE 410.
|
||||||
|
extern double LogL16toY(int);
|
||||||
|
extern double LogL10toY(int);
|
||||||
|
extern void XYZtoRGB24(float*, uint8*);
|
||||||
|
extern int uv_decode(double*, double*, int);
|
||||||
|
extern void LogLuv24toXYZ(uint32, float*);
|
||||||
|
extern void LogLuv32toXYZ(uint32, float*);
|
||||||
|
#if defined(c_plusplus) || defined(__cplusplus)
|
||||||
|
extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
|
||||||
|
extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
|
||||||
|
extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
|
||||||
|
extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||||
|
extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
|
||||||
|
#else
|
||||||
|
extern int LogL16fromY(double, int);
|
||||||
|
extern int LogL10fromY(double, int);
|
||||||
|
extern int uv_encode(double, double, int);
|
||||||
|
extern uint32 LogLuv24fromXYZ(float*, int);
|
||||||
|
extern uint32 LogLuv32fromXYZ(float*, int);
|
||||||
|
#endif
|
||||||
|
#endif /* LOGLUV_PUBLIC */
|
||||||
|
|
||||||
extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
|
||||||
extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
|
||||||
float *, float *, float *);
|
float *, float *, float *);
|
||||||
@ -499,3 +517,10 @@ extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
|
|||||||
#endif /* _TIFFIO_ */
|
#endif /* _TIFFIO_ */
|
||||||
|
|
||||||
/* vim: set ts=8 sts=8 sw=8 noet: */
|
/* vim: set ts=8 sts=8 sw=8 noet: */
|
||||||
|
/*
|
||||||
|
* Local Variables:
|
||||||
|
* mode: c
|
||||||
|
* c-basic-offset: 8
|
||||||
|
* fill-column: 78
|
||||||
|
* End:
|
||||||
|
*/
|
||||||
|
4
3rdparty/include/tiffvers.h
vendored
4
3rdparty/include/tiffvers.h
vendored
@ -1,4 +1,4 @@
|
|||||||
#define TIFFLIB_VERSION_STR "LIBTIFF, Version 3.7.2\nCopyright (c) 1988-1996 Sam Leffler\nCopyright (c) 1991-1996 Silicon Graphics, Inc."
|
#define TIFFLIB_VERSION_STR "LIBTIFF, Version 3.9.4\nCopyright (c) 1988-1996 Sam Leffler\nCopyright (c) 1991-1996 Silicon Graphics, Inc."
|
||||||
/*
|
/*
|
||||||
* This define can be used in code that requires
|
* This define can be used in code that requires
|
||||||
* compilation-related definitions specific to a
|
* compilation-related definitions specific to a
|
||||||
@ -6,4 +6,4 @@
|
|||||||
* version checking should be done based on the
|
* version checking should be done based on the
|
||||||
* string returned by TIFFGetVersion.
|
* string returned by TIFFGetVersion.
|
||||||
*/
|
*/
|
||||||
#define TIFFLIB_VERSION 20050315
|
#define TIFFLIB_VERSION 20100615
|
||||||
|
170
3rdparty/include/zconf.h
vendored
170
3rdparty/include/zconf.h
vendored
@ -1,9 +1,9 @@
|
|||||||
/* zconf.h -- configuration of the zlib compression library
|
/* zconf.h -- configuration of the zlib compression library
|
||||||
* Copyright (C) 1995-2005 Jean-loup Gailly.
|
* Copyright (C) 1995-2010 Jean-loup Gailly.
|
||||||
* For conditions of distribution and use, see copyright notice in zlib.h
|
* For conditions of distribution and use, see copyright notice in zlib.h
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* @(#) $Id: zconf.h,v 1.3 2008-05-26 19:08:11 vp153 Exp $ */
|
/* @(#) $Id$ */
|
||||||
|
|
||||||
#ifndef ZCONF_H
|
#ifndef ZCONF_H
|
||||||
#define ZCONF_H
|
#define ZCONF_H
|
||||||
@ -11,52 +11,124 @@
|
|||||||
/*
|
/*
|
||||||
* If you *really* need a unique prefix for all types and library functions,
|
* If you *really* need a unique prefix for all types and library functions,
|
||||||
* compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
|
* compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
|
||||||
|
* Even better than compiling with -DZ_PREFIX would be to use configure to set
|
||||||
|
* this permanently in zconf.h using "./configure --zprefix".
|
||||||
*/
|
*/
|
||||||
#ifdef Z_PREFIX
|
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
|
||||||
# define deflateInit_ z_deflateInit_
|
|
||||||
# define deflate z_deflate
|
/* all linked symbols */
|
||||||
# define deflateEnd z_deflateEnd
|
# define _dist_code z__dist_code
|
||||||
# define inflateInit_ z_inflateInit_
|
# define _length_code z__length_code
|
||||||
# define inflate z_inflate
|
# define _tr_align z__tr_align
|
||||||
# define inflateEnd z_inflateEnd
|
# define _tr_flush_block z__tr_flush_block
|
||||||
# define deflateInit2_ z_deflateInit2_
|
# define _tr_init z__tr_init
|
||||||
# define deflateSetDictionary z_deflateSetDictionary
|
# define _tr_stored_block z__tr_stored_block
|
||||||
# define deflateCopy z_deflateCopy
|
# define _tr_tally z__tr_tally
|
||||||
# define deflateReset z_deflateReset
|
# define adler32 z_adler32
|
||||||
# define deflateParams z_deflateParams
|
# define adler32_combine z_adler32_combine
|
||||||
# define deflateBound z_deflateBound
|
# define adler32_combine64 z_adler32_combine64
|
||||||
# define deflatePrime z_deflatePrime
|
|
||||||
# define inflateInit2_ z_inflateInit2_
|
|
||||||
# define inflateSetDictionary z_inflateSetDictionary
|
|
||||||
# define inflateSync z_inflateSync
|
|
||||||
# define inflateSyncPoint z_inflateSyncPoint
|
|
||||||
# define inflateCopy z_inflateCopy
|
|
||||||
# define inflateReset z_inflateReset
|
|
||||||
# define inflateBack z_inflateBack
|
|
||||||
# define inflateBackEnd z_inflateBackEnd
|
|
||||||
# define compress z_compress
|
# define compress z_compress
|
||||||
# define compress2 z_compress2
|
# define compress2 z_compress2
|
||||||
# define compressBound z_compressBound
|
# define compressBound z_compressBound
|
||||||
# define uncompress z_uncompress
|
|
||||||
# define adler32 z_adler32
|
|
||||||
# define crc32 z_crc32
|
# define crc32 z_crc32
|
||||||
|
# define crc32_combine z_crc32_combine
|
||||||
|
# define crc32_combine64 z_crc32_combine64
|
||||||
|
# define deflate z_deflate
|
||||||
|
# define deflateBound z_deflateBound
|
||||||
|
# define deflateCopy z_deflateCopy
|
||||||
|
# define deflateEnd z_deflateEnd
|
||||||
|
# define deflateInit2_ z_deflateInit2_
|
||||||
|
# define deflateInit_ z_deflateInit_
|
||||||
|
# define deflateParams z_deflateParams
|
||||||
|
# define deflatePrime z_deflatePrime
|
||||||
|
# define deflateReset z_deflateReset
|
||||||
|
# define deflateSetDictionary z_deflateSetDictionary
|
||||||
|
# define deflateSetHeader z_deflateSetHeader
|
||||||
|
# define deflateTune z_deflateTune
|
||||||
|
# define deflate_copyright z_deflate_copyright
|
||||||
# define get_crc_table z_get_crc_table
|
# define get_crc_table z_get_crc_table
|
||||||
|
# define gz_error z_gz_error
|
||||||
|
# define gz_intmax z_gz_intmax
|
||||||
|
# define gz_strwinerror z_gz_strwinerror
|
||||||
|
# define gzbuffer z_gzbuffer
|
||||||
|
# define gzclearerr z_gzclearerr
|
||||||
|
# define gzclose z_gzclose
|
||||||
|
# define gzclose_r z_gzclose_r
|
||||||
|
# define gzclose_w z_gzclose_w
|
||||||
|
# define gzdirect z_gzdirect
|
||||||
|
# define gzdopen z_gzdopen
|
||||||
|
# define gzeof z_gzeof
|
||||||
|
# define gzerror z_gzerror
|
||||||
|
# define gzflush z_gzflush
|
||||||
|
# define gzgetc z_gzgetc
|
||||||
|
# define gzgets z_gzgets
|
||||||
|
# define gzoffset z_gzoffset
|
||||||
|
# define gzoffset64 z_gzoffset64
|
||||||
|
# define gzopen z_gzopen
|
||||||
|
# define gzopen64 z_gzopen64
|
||||||
|
# define gzprintf z_gzprintf
|
||||||
|
# define gzputc z_gzputc
|
||||||
|
# define gzputs z_gzputs
|
||||||
|
# define gzread z_gzread
|
||||||
|
# define gzrewind z_gzrewind
|
||||||
|
# define gzseek z_gzseek
|
||||||
|
# define gzseek64 z_gzseek64
|
||||||
|
# define gzsetparams z_gzsetparams
|
||||||
|
# define gztell z_gztell
|
||||||
|
# define gztell64 z_gztell64
|
||||||
|
# define gzungetc z_gzungetc
|
||||||
|
# define gzwrite z_gzwrite
|
||||||
|
# define inflate z_inflate
|
||||||
|
# define inflateBack z_inflateBack
|
||||||
|
# define inflateBackEnd z_inflateBackEnd
|
||||||
|
# define inflateBackInit_ z_inflateBackInit_
|
||||||
|
# define inflateCopy z_inflateCopy
|
||||||
|
# define inflateEnd z_inflateEnd
|
||||||
|
# define inflateGetHeader z_inflateGetHeader
|
||||||
|
# define inflateInit2_ z_inflateInit2_
|
||||||
|
# define inflateInit_ z_inflateInit_
|
||||||
|
# define inflateMark z_inflateMark
|
||||||
|
# define inflatePrime z_inflatePrime
|
||||||
|
# define inflateReset z_inflateReset
|
||||||
|
# define inflateReset2 z_inflateReset2
|
||||||
|
# define inflateSetDictionary z_inflateSetDictionary
|
||||||
|
# define inflateSync z_inflateSync
|
||||||
|
# define inflateSyncPoint z_inflateSyncPoint
|
||||||
|
# define inflateUndermine z_inflateUndermine
|
||||||
|
# define inflate_copyright z_inflate_copyright
|
||||||
|
# define inflate_fast z_inflate_fast
|
||||||
|
# define inflate_table z_inflate_table
|
||||||
|
# define uncompress z_uncompress
|
||||||
# define zError z_zError
|
# define zError z_zError
|
||||||
|
# define zcalloc z_zcalloc
|
||||||
|
# define zcfree z_zcfree
|
||||||
|
# define zlibCompileFlags z_zlibCompileFlags
|
||||||
|
# define zlibVersion z_zlibVersion
|
||||||
|
|
||||||
# define alloc_func z_alloc_func
|
/* all zlib typedefs in zlib.h and zconf.h */
|
||||||
# define free_func z_free_func
|
|
||||||
# define in_func z_in_func
|
|
||||||
# define out_func z_out_func
|
|
||||||
# define Byte z_Byte
|
# define Byte z_Byte
|
||||||
# define uInt z_uInt
|
|
||||||
# define uLong z_uLong
|
|
||||||
# define Bytef z_Bytef
|
# define Bytef z_Bytef
|
||||||
|
# define alloc_func z_alloc_func
|
||||||
# define charf z_charf
|
# define charf z_charf
|
||||||
|
# define free_func z_free_func
|
||||||
|
# define gzFile z_gzFile
|
||||||
|
# define gz_header z_gz_header
|
||||||
|
# define gz_headerp z_gz_headerp
|
||||||
|
# define in_func z_in_func
|
||||||
# define intf z_intf
|
# define intf z_intf
|
||||||
|
# define out_func z_out_func
|
||||||
|
# define uInt z_uInt
|
||||||
# define uIntf z_uIntf
|
# define uIntf z_uIntf
|
||||||
|
# define uLong z_uLong
|
||||||
# define uLongf z_uLongf
|
# define uLongf z_uLongf
|
||||||
# define voidpf z_voidpf
|
|
||||||
# define voidp z_voidp
|
# define voidp z_voidp
|
||||||
|
# define voidpc z_voidpc
|
||||||
|
# define voidpf z_voidpf
|
||||||
|
|
||||||
|
/* all zlib structs in zlib.h and zconf.h */
|
||||||
|
# define gz_header_s z_gz_header_s
|
||||||
|
# define internal_state z_internal_state
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__MSDOS__) && !defined(MSDOS)
|
#if defined(__MSDOS__) && !defined(MSDOS)
|
||||||
@ -284,32 +356,56 @@ typedef uLong FAR uLongf;
|
|||||||
typedef Byte *voidp;
|
typedef Byte *voidp;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */
|
#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */
|
||||||
|
# define Z_HAVE_UNISTD_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef STDC
|
||||||
# include <sys/types.h> /* for off_t */
|
# include <sys/types.h> /* for off_t */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
|
||||||
|
* "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even
|
||||||
|
* though the former does not conform to the LFS document), but considering
|
||||||
|
* both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as
|
||||||
|
* equivalently requesting no 64-bit operations
|
||||||
|
*/
|
||||||
|
#if -_LARGEFILE64_SOURCE - -1 == 1
|
||||||
|
# undef _LARGEFILE64_SOURCE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE)
|
||||||
# include <unistd.h> /* for SEEK_* and off_t */
|
# include <unistd.h> /* for SEEK_* and off_t */
|
||||||
# ifdef VMS
|
# ifdef VMS
|
||||||
# include <unixio.h> /* for off_t */
|
# include <unixio.h> /* for off_t */
|
||||||
# endif
|
# endif
|
||||||
|
# ifndef z_off_t
|
||||||
# define z_off_t off_t
|
# define z_off_t off_t
|
||||||
# endif
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef SEEK_SET
|
#ifndef SEEK_SET
|
||||||
# define SEEK_SET 0 /* Seek from beginning of file. */
|
# define SEEK_SET 0 /* Seek from beginning of file. */
|
||||||
# define SEEK_CUR 1 /* Seek from current position. */
|
# define SEEK_CUR 1 /* Seek from current position. */
|
||||||
# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
|
# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef z_off_t
|
#ifndef z_off_t
|
||||||
# define z_off_t long
|
# define z_off_t long
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0
|
||||||
|
# define z_off64_t off64_t
|
||||||
|
#else
|
||||||
|
# define z_off64_t z_off_t
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(__OS400__)
|
#if defined(__OS400__)
|
||||||
# define NO_vsnprintf
|
# define NO_vsnprintf
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__MVS__)
|
#if defined(__MVS__)
|
||||||
# define NO_vsnprintf
|
# define NO_vsnprintf
|
||||||
# ifdef FAR
|
|
||||||
# undef FAR
|
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* MVS linker does not support external names larger than 8 bytes */
|
/* MVS linker does not support external names larger than 8 bytes */
|
||||||
|
926
3rdparty/include/zlib.h
vendored
926
3rdparty/include/zlib.h
vendored
File diff suppressed because it is too large
Load Diff
13
3rdparty/lapack/dasum.c
vendored
13
3rdparty/lapack/dasum.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dasum.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
doublereal dasum_(integer *n, doublereal *dx, integer *incx)
|
doublereal dasum_(integer *n, doublereal *dx, integer *incx)
|
||||||
{
|
{
|
||||||
/* System generated locals */
|
/* System generated locals */
|
||||||
|
13
3rdparty/lapack/daxpy.c
vendored
13
3rdparty/lapack/daxpy.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* daxpy.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int daxpy_(integer *n, doublereal *da, doublereal *dx,
|
/* Subroutine */ int daxpy_(integer *n, doublereal *da, doublereal *dx,
|
||||||
integer *incx, doublereal *dy, integer *incy)
|
integer *incx, doublereal *dy, integer *incy)
|
||||||
{
|
{
|
||||||
|
15
3rdparty/lapack/dbdsdc.c
vendored
15
3rdparty/lapack/dbdsdc.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dbdsdc.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__9 = 9;
|
static integer c__9 = 9;
|
||||||
@ -63,7 +76,7 @@ static doublereal c_b29 = 0.;
|
|||||||
integer givnum, givptr, qstart, smlsiz, wstart, smlszp;
|
integer givnum, givptr, qstart, smlsiz, wstart, smlszp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
28
3rdparty/lapack/dbdsqr.c
vendored
28
3rdparty/lapack/dbdsqr.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dbdsqr.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b15 = -.125;
|
static doublereal c_b15 = -.125;
|
||||||
@ -64,7 +77,7 @@ static doublereal c_b72 = -1.;
|
|||||||
doublereal tolmul;
|
doublereal tolmul;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* January 2007 */
|
/* January 2007 */
|
||||||
|
|
||||||
@ -164,13 +177,20 @@ static doublereal c_b72 = -1.;
|
|||||||
/* The leading dimension of the array C. */
|
/* The leading dimension of the array C. */
|
||||||
/* LDC >= max(1,N) if NCC > 0; LDC >=1 if NCC = 0. */
|
/* LDC >= max(1,N) if NCC > 0; LDC >=1 if NCC = 0. */
|
||||||
|
|
||||||
/* WORK (workspace) DOUBLE PRECISION array, dimension (2*N) */
|
/* WORK (workspace) DOUBLE PRECISION array, dimension (4*N) */
|
||||||
/* if NCVT = NRU = NCC = 0, (max(1, 4*N)) otherwise */
|
|
||||||
|
|
||||||
/* INFO (output) INTEGER */
|
/* INFO (output) INTEGER */
|
||||||
/* = 0: successful exit */
|
/* = 0: successful exit */
|
||||||
/* < 0: If INFO = -i, the i-th argument had an illegal value */
|
/* < 0: If INFO = -i, the i-th argument had an illegal value */
|
||||||
/* > 0: the algorithm did not converge; D and E contain the */
|
/* > 0: */
|
||||||
|
/* if NCVT = NRU = NCC = 0, */
|
||||||
|
/* = 1, a split was marked by a positive value in E */
|
||||||
|
/* = 2, current block of Z not diagonalized after 30*N */
|
||||||
|
/* iterations (in inner while loop) */
|
||||||
|
/* = 3, termination criterion of outer while loop not met */
|
||||||
|
/* (program created more than N unreduced blocks) */
|
||||||
|
/* else NCVT = NRU = NCC = 0, */
|
||||||
|
/* the algorithm did not converge; D and E contain the */
|
||||||
/* elements of a bidiagonal matrix which is orthogonally */
|
/* elements of a bidiagonal matrix which is orthogonally */
|
||||||
/* similar to the input matrix B; if INFO = i, i */
|
/* similar to the input matrix B; if INFO = i, i */
|
||||||
/* elements of E have not converged to zero. */
|
/* elements of E have not converged to zero. */
|
||||||
|
13
3rdparty/lapack/dcopy.c
vendored
13
3rdparty/lapack/dcopy.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dcopy.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dcopy_(integer *n, doublereal *dx, integer *incx,
|
/* Subroutine */ int dcopy_(integer *n, doublereal *dx, integer *incx,
|
||||||
doublereal *dy, integer *incy)
|
doublereal *dy, integer *incy)
|
||||||
{
|
{
|
||||||
|
13
3rdparty/lapack/ddot.c
vendored
13
3rdparty/lapack/ddot.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* ddot.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
doublereal ddot_(integer *n, doublereal *dx, integer *incx, doublereal *dy,
|
doublereal ddot_(integer *n, doublereal *dx, integer *incx, doublereal *dy,
|
||||||
integer *incy)
|
integer *incy)
|
||||||
{
|
{
|
||||||
|
15
3rdparty/lapack/dgebd2.c
vendored
15
3rdparty/lapack/dgebd2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgebd2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -19,7 +32,7 @@ static integer c__1 = 1;
|
|||||||
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgebrd.c
vendored
15
3rdparty/lapack/dgebrd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgebrd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -35,7 +48,7 @@ static doublereal c_b22 = 1.;
|
|||||||
logical lquery;
|
logical lquery;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
19
3rdparty/lapack/dgelq2.c
vendored
19
3rdparty/lapack/dgelq2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgelq2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dgelq2_(integer *m, integer *n, doublereal *a, integer *
|
/* Subroutine */ int dgelq2_(integer *m, integer *n, doublereal *a, integer *
|
||||||
lda, doublereal *tau, doublereal *work, integer *info)
|
lda, doublereal *tau, doublereal *work, integer *info)
|
||||||
{
|
{
|
||||||
@ -11,11 +24,11 @@
|
|||||||
doublereal aii;
|
doublereal aii;
|
||||||
extern /* Subroutine */ int dlarf_(char *, integer *, integer *,
|
extern /* Subroutine */ int dlarf_(char *, integer *, integer *,
|
||||||
doublereal *, integer *, doublereal *, doublereal *, integer *,
|
doublereal *, integer *, doublereal *, doublereal *, integer *,
|
||||||
doublereal *), dlarfg_(integer *, doublereal *,
|
doublereal *), dlarfp_(integer *, doublereal *,
|
||||||
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -121,7 +134,7 @@
|
|||||||
i__2 = *n - i__ + 1;
|
i__2 = *n - i__ + 1;
|
||||||
/* Computing MIN */
|
/* Computing MIN */
|
||||||
i__3 = i__ + 1;
|
i__3 = i__ + 1;
|
||||||
dlarfg_(&i__2, &a[i__ + i__ * a_dim1], &a[i__ + min(i__3, *n)* a_dim1]
|
dlarfp_(&i__2, &a[i__ + i__ * a_dim1], &a[i__ + min(i__3, *n)* a_dim1]
|
||||||
, lda, &tau[i__]);
|
, lda, &tau[i__]);
|
||||||
if (i__ < *m) {
|
if (i__ < *m) {
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgelqf.c
vendored
15
3rdparty/lapack/dgelqf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgelqf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -27,7 +40,7 @@ static integer c__2 = 2;
|
|||||||
logical lquery;
|
logical lquery;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgels.c
vendored
15
3rdparty/lapack/dgels.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgels.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -51,7 +64,7 @@ static integer c__0 = 0;
|
|||||||
integer *);
|
integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK driver routine (version 3.1) -- */
|
/* -- LAPACK driver routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
23
3rdparty/lapack/dgelsd.c
vendored
23
3rdparty/lapack/dgelsd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgelsd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__6 = 6;
|
static integer c__6 = 6;
|
||||||
@ -64,7 +77,7 @@ static doublereal c_b82 = 0.;
|
|||||||
integer smlsiz;
|
integer smlsiz;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK driver routine (version 3.1) -- */
|
/* -- LAPACK driver routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -336,6 +349,14 @@ static doublereal c_b82 = 0.;
|
|||||||
/* Computing MAX */
|
/* Computing MAX */
|
||||||
i__1 = maxwrk, i__2 = *m * *m + (*m << 2) + wlalsd;
|
i__1 = maxwrk, i__2 = *m * *m + (*m << 2) + wlalsd;
|
||||||
maxwrk = max(i__1,i__2);
|
maxwrk = max(i__1,i__2);
|
||||||
|
/* XXX: Ensure the Path 2a case below is triggered. The workspace */
|
||||||
|
/* calculation should use queries for all routines eventually. */
|
||||||
|
/* Computing MAX */
|
||||||
|
/* Computing MAX */
|
||||||
|
i__3 = *m, i__4 = (*m << 1) - 4, i__3 = max(i__3,i__4), i__3 =
|
||||||
|
max(i__3,*nrhs), i__4 = *n - *m * 3;
|
||||||
|
i__1 = maxwrk, i__2 = (*m << 2) + *m * *m + max(i__3,i__4);
|
||||||
|
maxwrk = max(i__1,i__2);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/* Path 2 - remaining underdetermined cases. */
|
/* Path 2 - remaining underdetermined cases. */
|
||||||
|
13
3rdparty/lapack/dgemm.c
vendored
13
3rdparty/lapack/dgemm.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgemm.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dgemm_(char *transa, char *transb, integer *m, integer *
|
/* Subroutine */ int dgemm_(char *transa, char *transb, integer *m, integer *
|
||||||
n, integer *k, doublereal *alpha, doublereal *a, integer *lda,
|
n, integer *k, doublereal *alpha, doublereal *a, integer *lda,
|
||||||
doublereal *b, integer *ldb, doublereal *beta, doublereal *c__,
|
doublereal *b, integer *ldb, doublereal *beta, doublereal *c__,
|
||||||
|
13
3rdparty/lapack/dgemv.c
vendored
13
3rdparty/lapack/dgemv.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgemv.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dgemv_(char *trans, integer *m, integer *n, doublereal *
|
/* Subroutine */ int dgemv_(char *trans, integer *m, integer *n, doublereal *
|
||||||
alpha, doublereal *a, integer *lda, doublereal *x, integer *incx,
|
alpha, doublereal *a, integer *lda, doublereal *x, integer *incx,
|
||||||
doublereal *beta, doublereal *y, integer *incy)
|
doublereal *beta, doublereal *y, integer *incy)
|
||||||
|
19
3rdparty/lapack/dgeqr2.c
vendored
19
3rdparty/lapack/dgeqr2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgeqr2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -15,11 +28,11 @@ static integer c__1 = 1;
|
|||||||
doublereal aii;
|
doublereal aii;
|
||||||
extern /* Subroutine */ int dlarf_(char *, integer *, integer *,
|
extern /* Subroutine */ int dlarf_(char *, integer *, integer *,
|
||||||
doublereal *, integer *, doublereal *, doublereal *, integer *,
|
doublereal *, integer *, doublereal *, doublereal *, integer *,
|
||||||
doublereal *), dlarfg_(integer *, doublereal *,
|
doublereal *), dlarfp_(integer *, doublereal *,
|
||||||
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
doublereal *, integer *, doublereal *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -125,7 +138,7 @@ static integer c__1 = 1;
|
|||||||
i__2 = *m - i__ + 1;
|
i__2 = *m - i__ + 1;
|
||||||
/* Computing MIN */
|
/* Computing MIN */
|
||||||
i__3 = i__ + 1;
|
i__3 = i__ + 1;
|
||||||
dlarfg_(&i__2, &a[i__ + i__ * a_dim1], &a[min(i__3, *m)+ i__ * a_dim1]
|
dlarfp_(&i__2, &a[i__ + i__ * a_dim1], &a[min(i__3, *m)+ i__ * a_dim1]
|
||||||
, &c__1, &tau[i__]);
|
, &c__1, &tau[i__]);
|
||||||
if (i__ < *n) {
|
if (i__ < *n) {
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgeqrf.c
vendored
15
3rdparty/lapack/dgeqrf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgeqrf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -27,7 +40,7 @@ static integer c__2 = 2;
|
|||||||
logical lquery;
|
logical lquery;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
13
3rdparty/lapack/dger.c
vendored
13
3rdparty/lapack/dger.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dger.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dger_(integer *m, integer *n, doublereal *alpha,
|
/* Subroutine */ int dger_(integer *m, integer *n, doublereal *alpha,
|
||||||
doublereal *x, integer *incx, doublereal *y, integer *incy,
|
doublereal *x, integer *incx, doublereal *y, integer *incy,
|
||||||
doublereal *a, integer *lda)
|
doublereal *a, integer *lda)
|
||||||
|
24
3rdparty/lapack/dgesdd.c
vendored
24
3rdparty/lapack/dgesdd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgesdd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -68,9 +81,10 @@ static doublereal c_b248 = 1.;
|
|||||||
logical wntqas, lquery;
|
logical wntqas, lquery;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK driver routine (version 3.1) -- */
|
/* -- LAPACK driver routine (version 3.2.1) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* -- LAPACK is a software package provided by Univ. of Tennessee, -- */
|
||||||
/* November 2006 */
|
/* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- */
|
||||||
|
/* March 2009 */
|
||||||
|
|
||||||
/* .. Scalar Arguments .. */
|
/* .. Scalar Arguments .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
@ -179,10 +193,10 @@ static doublereal c_b248 = 1.;
|
|||||||
/* If JOBZ = 'N', */
|
/* If JOBZ = 'N', */
|
||||||
/* LWORK >= 3*min(M,N) + max(max(M,N),7*min(M,N)). */
|
/* LWORK >= 3*min(M,N) + max(max(M,N),7*min(M,N)). */
|
||||||
/* If JOBZ = 'O', */
|
/* If JOBZ = 'O', */
|
||||||
/* LWORK >= 3*min(M,N)*min(M,N) + */
|
/* LWORK >= 3*min(M,N) + */
|
||||||
/* max(max(M,N),5*min(M,N)*min(M,N)+4*min(M,N)). */
|
/* max(max(M,N),5*min(M,N)*min(M,N)+4*min(M,N)). */
|
||||||
/* If JOBZ = 'S' or 'A' */
|
/* If JOBZ = 'S' or 'A' */
|
||||||
/* LWORK >= 3*min(M,N)*min(M,N) + */
|
/* LWORK >= 3*min(M,N) + */
|
||||||
/* max(max(M,N),4*min(M,N)*min(M,N)+4*min(M,N)). */
|
/* max(max(M,N),4*min(M,N)*min(M,N)+4*min(M,N)). */
|
||||||
/* For good performance, LWORK should generally be larger. */
|
/* For good performance, LWORK should generally be larger. */
|
||||||
/* If LWORK = -1 but other input arguments are legal, WORK(1) */
|
/* If LWORK = -1 but other input arguments are legal, WORK(1) */
|
||||||
|
15
3rdparty/lapack/dgesv.c
vendored
15
3rdparty/lapack/dgesv.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgesv.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dgesv_(integer *n, integer *nrhs, doublereal *a, integer
|
/* Subroutine */ int dgesv_(integer *n, integer *nrhs, doublereal *a, integer
|
||||||
*lda, integer *ipiv, doublereal *b, integer *ldb, integer *info)
|
*lda, integer *ipiv, doublereal *b, integer *ldb, integer *info)
|
||||||
{
|
{
|
||||||
@ -12,7 +25,7 @@
|
|||||||
integer *, integer *, doublereal *, integer *, integer *);
|
integer *, integer *, doublereal *, integer *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK driver routine (version 3.1) -- */
|
/* -- LAPACK driver routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgetf2.c
vendored
15
3rdparty/lapack/dgetf2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgetf2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -26,7 +39,7 @@ static doublereal c_b8 = -1.;
|
|||||||
extern /* Subroutine */ int xerbla_(char *, integer *);
|
extern /* Subroutine */ int xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgetrf.c
vendored
15
3rdparty/lapack/dgetrf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgetrf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -30,7 +43,7 @@ static doublereal c_b19 = -1.;
|
|||||||
integer *, integer *, integer *, integer *);
|
integer *, integer *, integer *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgetri.c
vendored
15
3rdparty/lapack/dgetri.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgetri.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -37,7 +50,7 @@ static doublereal c_b22 = 1.;
|
|||||||
logical lquery;
|
logical lquery;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dgetrs.c
vendored
15
3rdparty/lapack/dgetrs.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dgetrs.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -23,7 +36,7 @@ static integer c_n1 = -1;
|
|||||||
logical notran;
|
logical notran;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlabad.c
vendored
15
3rdparty/lapack/dlabad.c
vendored
@ -1,12 +1,25 @@
|
|||||||
|
/* dlabad.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlabad_(doublereal *small, doublereal *large)
|
/* Subroutine */ int dlabad_(doublereal *small, doublereal *large)
|
||||||
{
|
{
|
||||||
/* Builtin functions */
|
/* Builtin functions */
|
||||||
double d_lg10(doublereal *), sqrt(doublereal);
|
double d_lg10(doublereal *), sqrt(doublereal);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlabrd.c
vendored
15
3rdparty/lapack/dlabrd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlabrd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b4 = -1.;
|
static doublereal c_b4 = -1.;
|
||||||
@ -25,7 +38,7 @@ static doublereal c_b16 = 0.;
|
|||||||
doublereal *, integer *, doublereal *);
|
doublereal *, integer *, doublereal *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlacpy.c
vendored
15
3rdparty/lapack/dlacpy.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlacpy.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlacpy_(char *uplo, integer *m, integer *n, doublereal *
|
/* Subroutine */ int dlacpy_(char *uplo, integer *m, integer *n, doublereal *
|
||||||
a, integer *lda, doublereal *b, integer *ldb)
|
a, integer *lda, doublereal *b, integer *ldb)
|
||||||
{
|
{
|
||||||
@ -11,7 +24,7 @@
|
|||||||
extern logical lsame_(char *, char *);
|
extern logical lsame_(char *, char *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlae2.c
vendored
15
3rdparty/lapack/dlae2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlae2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlae2_(doublereal *a, doublereal *b, doublereal *c__,
|
/* Subroutine */ int dlae2_(doublereal *a, doublereal *b, doublereal *c__,
|
||||||
doublereal *rt1, doublereal *rt2)
|
doublereal *rt1, doublereal *rt2)
|
||||||
{
|
{
|
||||||
@ -13,7 +26,7 @@
|
|||||||
doublereal ab, df, tb, sm, rt, adf, acmn, acmx;
|
doublereal ab, df, tb, sm, rt, adf, acmn, acmx;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaebz.c
vendored
15
3rdparty/lapack/dlaebz.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaebz.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaebz_(integer *ijob, integer *nitmax, integer *n,
|
/* Subroutine */ int dlaebz_(integer *ijob, integer *nitmax, integer *n,
|
||||||
integer *mmax, integer *minp, integer *nbmin, doublereal *abstol,
|
integer *mmax, integer *minp, integer *nbmin, doublereal *abstol,
|
||||||
doublereal *reltol, doublereal *pivmin, doublereal *d__, doublereal *
|
doublereal *reltol, doublereal *pivmin, doublereal *d__, doublereal *
|
||||||
@ -18,7 +31,7 @@
|
|||||||
integer itmp1, itmp2, kfnew, klnew;
|
integer itmp1, itmp2, kfnew, klnew;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed0.c
vendored
15
3rdparty/lapack/dlaed0.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed0.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__9 = 9;
|
static integer c__9 = 9;
|
||||||
@ -55,7 +68,7 @@ static integer c__1 = 1;
|
|||||||
integer curlvl, matsiz, iprmpt, smlsiz;
|
integer curlvl, matsiz, iprmpt, smlsiz;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed1.c
vendored
15
3rdparty/lapack/dlaed1.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed1.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -30,7 +43,7 @@ static integer c_n1 = -1;
|
|||||||
integer coltyp;
|
integer coltyp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed2.c
vendored
15
3rdparty/lapack/dlaed2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b3 = -1.;
|
static doublereal c_b3 = -1.;
|
||||||
@ -38,7 +51,7 @@ static integer c__1 = 1;
|
|||||||
integer *, doublereal *, integer *, doublereal *, integer *), xerbla_(char *, integer *);
|
integer *, doublereal *, integer *, doublereal *, integer *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed3.c
vendored
15
3rdparty/lapack/dlaed3.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed3.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -35,7 +48,7 @@ static doublereal c_b23 = 0.;
|
|||||||
doublereal *, integer *), xerbla_(char *, integer *);
|
doublereal *, integer *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed4.c
vendored
15
3rdparty/lapack/dlaed4.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed4.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaed4_(integer *n, integer *i__, doublereal *d__,
|
/* Subroutine */ int dlaed4_(integer *n, integer *i__, doublereal *d__,
|
||||||
doublereal *z__, doublereal *delta, doublereal *rho, doublereal *dlam,
|
doublereal *z__, doublereal *delta, doublereal *rho, doublereal *dlam,
|
||||||
integer *info)
|
integer *info)
|
||||||
@ -35,7 +48,7 @@
|
|||||||
doublereal erretm, rhoinv;
|
doublereal erretm, rhoinv;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed5.c
vendored
15
3rdparty/lapack/dlaed5.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed5.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaed5_(integer *i__, doublereal *d__, doublereal *z__,
|
/* Subroutine */ int dlaed5_(integer *i__, doublereal *d__, doublereal *z__,
|
||||||
doublereal *delta, doublereal *rho, doublereal *dlam)
|
doublereal *delta, doublereal *rho, doublereal *dlam)
|
||||||
{
|
{
|
||||||
@ -13,7 +26,7 @@
|
|||||||
doublereal b, c__, w, del, tau, temp;
|
doublereal b, c__, w, del, tau, temp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed6.c
vendored
15
3rdparty/lapack/dlaed6.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed6.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaed6_(integer *kniter, logical *orgati, doublereal *
|
/* Subroutine */ int dlaed6_(integer *kniter, logical *orgati, doublereal *
|
||||||
rho, doublereal *d__, doublereal *z__, doublereal *finit, doublereal *
|
rho, doublereal *d__, doublereal *z__, doublereal *finit, doublereal *
|
||||||
tau, integer *info)
|
tau, integer *info)
|
||||||
@ -24,7 +37,7 @@
|
|||||||
doublereal dscale[3], sclfac, zscale[3], erretm, sclinv;
|
doublereal dscale[3], sclfac, zscale[3], erretm, sclinv;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* February 2007 */
|
/* February 2007 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed7.c
vendored
15
3rdparty/lapack/dlaed7.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed7.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__2 = 2;
|
static integer c__2 = 2;
|
||||||
@ -44,7 +57,7 @@ static integer c_n1 = -1;
|
|||||||
integer coltyp;
|
integer coltyp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed8.c
vendored
15
3rdparty/lapack/dlaed8.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed8.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b3 = -1.;
|
static doublereal c_b3 = -1.;
|
||||||
@ -37,7 +50,7 @@ static integer c__1 = 1;
|
|||||||
integer *, doublereal *, integer *, doublereal *, integer *), xerbla_(char *, integer *);
|
integer *, doublereal *, integer *, doublereal *, integer *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaed9.c
vendored
15
3rdparty/lapack/dlaed9.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaed9.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -28,7 +41,7 @@ static integer c__1 = 1;
|
|||||||
extern /* Subroutine */ int xerbla_(char *, integer *);
|
extern /* Subroutine */ int xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaeda.c
vendored
15
3rdparty/lapack/dlaeda.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaeda.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__2 = 2;
|
static integer c__2 = 2;
|
||||||
@ -31,7 +44,7 @@ static doublereal c_b26 = 0.;
|
|||||||
integer *);
|
integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaev2.c
vendored
15
3rdparty/lapack/dlaev2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaev2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaev2_(doublereal *a, doublereal *b, doublereal *c__,
|
/* Subroutine */ int dlaev2_(doublereal *a, doublereal *b, doublereal *c__,
|
||||||
doublereal *rt1, doublereal *rt2, doublereal *cs1, doublereal *sn1)
|
doublereal *rt1, doublereal *rt2, doublereal *cs1, doublereal *sn1)
|
||||||
{
|
{
|
||||||
@ -15,7 +28,7 @@
|
|||||||
doublereal acmn, acmx;
|
doublereal acmn, acmx;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlagtf.c
vendored
15
3rdparty/lapack/dlagtf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlagtf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlagtf_(integer *n, doublereal *a, doublereal *lambda,
|
/* Subroutine */ int dlagtf_(integer *n, doublereal *a, doublereal *lambda,
|
||||||
doublereal *b, doublereal *c__, doublereal *tol, doublereal *d__,
|
doublereal *b, doublereal *c__, doublereal *tol, doublereal *d__,
|
||||||
integer *in, integer *info)
|
integer *in, integer *info)
|
||||||
@ -15,7 +28,7 @@
|
|||||||
extern /* Subroutine */ int xerbla_(char *, integer *);
|
extern /* Subroutine */ int xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlagts.c
vendored
15
3rdparty/lapack/dlagts.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlagts.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlagts_(integer *job, integer *n, doublereal *a,
|
/* Subroutine */ int dlagts_(integer *job, integer *n, doublereal *a,
|
||||||
doublereal *b, doublereal *c__, doublereal *d__, integer *in,
|
doublereal *b, doublereal *c__, doublereal *d__, integer *in,
|
||||||
doublereal *y, doublereal *tol, integer *info)
|
doublereal *y, doublereal *tol, integer *info)
|
||||||
@ -19,7 +32,7 @@
|
|||||||
doublereal bignum;
|
doublereal bignum;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
18
3rdparty/lapack/dlaisnan.c
vendored
18
3rdparty/lapack/dlaisnan.c
vendored
@ -1,12 +1,25 @@
|
|||||||
|
/* dlaisnan.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
logical dlaisnan_(doublereal *din1, doublereal *din2)
|
logical dlaisnan_(doublereal *din1, doublereal *din2)
|
||||||
{
|
{
|
||||||
/* System generated locals */
|
/* System generated locals */
|
||||||
logical ret_val;
|
logical ret_val;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -24,8 +37,7 @@ logical dlaisnan_(doublereal *din1, doublereal *din2)
|
|||||||
/* returns .TRUE. To check for NaNs, pass the same variable as both */
|
/* returns .TRUE. To check for NaNs, pass the same variable as both */
|
||||||
/* arguments. */
|
/* arguments. */
|
||||||
|
|
||||||
/* Strictly speaking, Fortran does not allow aliasing of function */
|
/* A compiler must assume that the two arguments are */
|
||||||
/* arguments. So a compiler must assume that the two arguments are */
|
|
||||||
/* not the same variable, and the test will not be optimized away. */
|
/* not the same variable, and the test will not be optimized away. */
|
||||||
/* Interprocedural or whole-program optimization may delete this */
|
/* Interprocedural or whole-program optimization may delete this */
|
||||||
/* test. The ISNAN functions will be replaced by the correct */
|
/* test. The ISNAN functions will be replaced by the correct */
|
||||||
|
15
3rdparty/lapack/dlals0.c
vendored
15
3rdparty/lapack/dlals0.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlals0.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b5 = -1.;
|
static doublereal c_b5 = -1.;
|
||||||
@ -45,7 +58,7 @@ static integer c__0 = 0;
|
|||||||
doublereal dsigjp;
|
doublereal dsigjp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlalsa.c
vendored
15
3rdparty/lapack/dlalsa.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlalsa.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b7 = 1.;
|
static doublereal c_b7 = 1.;
|
||||||
@ -41,7 +54,7 @@ static integer c__2 = 2;
|
|||||||
integer *, integer *, integer *), xerbla_(char *, integer *);
|
integer *, integer *, integer *), xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlalsd.c
vendored
15
3rdparty/lapack/dlalsd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlalsd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -73,7 +86,7 @@ static doublereal c_b11 = 1.;
|
|||||||
integer givnum, givptr, smlszp;
|
integer givnum, givptr, smlszp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlamrg.c
vendored
15
3rdparty/lapack/dlamrg.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlamrg.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlamrg_(integer *n1, integer *n2, doublereal *a, integer
|
/* Subroutine */ int dlamrg_(integer *n1, integer *n2, doublereal *a, integer
|
||||||
*dtrd1, integer *dtrd2, integer *index)
|
*dtrd1, integer *dtrd2, integer *index)
|
||||||
{
|
{
|
||||||
@ -10,7 +23,7 @@
|
|||||||
integer i__, ind1, ind2, n1sv, n2sv;
|
integer i__, ind1, ind2, n1sv, n2sv;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaneg.c
vendored
15
3rdparty/lapack/dlaneg.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaneg.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
integer dlaneg_(integer *n, doublereal *d__, doublereal *lld, doublereal *
|
integer dlaneg_(integer *n, doublereal *d__, doublereal *lld, doublereal *
|
||||||
sigma, doublereal *pivmin, integer *r__)
|
sigma, doublereal *pivmin, integer *r__)
|
||||||
{
|
{
|
||||||
@ -19,7 +32,7 @@ integer dlaneg_(integer *n, doublereal *d__, doublereal *lld, doublereal *
|
|||||||
doublereal dminus;
|
doublereal dminus;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlange.c
vendored
15
3rdparty/lapack/dlange.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlange.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -23,7 +36,7 @@ doublereal dlange_(char *norm, integer *m, integer *n, doublereal *a, integer
|
|||||||
doublereal *, doublereal *);
|
doublereal *, doublereal *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlanst.c
vendored
15
3rdparty/lapack/dlanst.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlanst.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -22,7 +35,7 @@ doublereal dlanst_(char *norm, integer *n, doublereal *d__, doublereal *e)
|
|||||||
doublereal *, doublereal *);
|
doublereal *, doublereal *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlansy.c
vendored
15
3rdparty/lapack/dlansy.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlansy.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -23,7 +36,7 @@ doublereal dlansy_(char *norm, char *uplo, integer *n, doublereal *a, integer
|
|||||||
doublereal *, doublereal *);
|
doublereal *, doublereal *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlapy2.c
vendored
15
3rdparty/lapack/dlapy2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlapy2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
doublereal dlapy2_(doublereal *x, doublereal *y)
|
doublereal dlapy2_(doublereal *x, doublereal *y)
|
||||||
{
|
{
|
||||||
/* System generated locals */
|
/* System generated locals */
|
||||||
@ -12,7 +25,7 @@ doublereal dlapy2_(doublereal *x, doublereal *y)
|
|||||||
doublereal w, z__, xabs, yabs;
|
doublereal w, z__, xabs, yabs;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlar1v.c
vendored
15
3rdparty/lapack/dlar1v.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlar1v.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlar1v_(integer *n, integer *b1, integer *bn, doublereal
|
/* Subroutine */ int dlar1v_(integer *n, integer *b1, integer *bn, doublereal
|
||||||
*lambda, doublereal *d__, doublereal *l, doublereal *ld, doublereal *
|
*lambda, doublereal *d__, doublereal *l, doublereal *ld, doublereal *
|
||||||
lld, doublereal *pivmin, doublereal *gaptol, doublereal *z__, logical
|
lld, doublereal *pivmin, doublereal *gaptol, doublereal *z__, logical
|
||||||
@ -28,7 +41,7 @@
|
|||||||
logical sawnan1, sawnan2;
|
logical sawnan1, sawnan2;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
83
3rdparty/lapack/dlarf.c
vendored
83
3rdparty/lapack/dlarf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b4 = 1.;
|
static doublereal c_b4 = 1.;
|
||||||
@ -15,6 +28,8 @@ static integer c__1 = 1;
|
|||||||
doublereal d__1;
|
doublereal d__1;
|
||||||
|
|
||||||
/* Local variables */
|
/* Local variables */
|
||||||
|
integer i__;
|
||||||
|
logical applyleft;
|
||||||
extern /* Subroutine */ int dger_(integer *, integer *, doublereal *,
|
extern /* Subroutine */ int dger_(integer *, integer *, doublereal *,
|
||||||
doublereal *, integer *, doublereal *, integer *, doublereal *,
|
doublereal *, integer *, doublereal *, integer *, doublereal *,
|
||||||
integer *);
|
integer *);
|
||||||
@ -22,9 +37,12 @@ static integer c__1 = 1;
|
|||||||
extern /* Subroutine */ int dgemv_(char *, integer *, integer *,
|
extern /* Subroutine */ int dgemv_(char *, integer *, integer *,
|
||||||
doublereal *, doublereal *, integer *, doublereal *, integer *,
|
doublereal *, doublereal *, integer *, doublereal *, integer *,
|
||||||
doublereal *, doublereal *, integer *);
|
doublereal *, doublereal *, integer *);
|
||||||
|
integer lastc, lastv;
|
||||||
|
extern integer iladlc_(integer *, integer *, doublereal *, integer *),
|
||||||
|
iladlr_(integer *, integer *, doublereal *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -86,6 +104,8 @@ static integer c__1 = 1;
|
|||||||
|
|
||||||
/* .. Parameters .. */
|
/* .. Parameters .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
|
/* .. Local Scalars .. */
|
||||||
|
/* .. */
|
||||||
/* .. External Subroutines .. */
|
/* .. External Subroutines .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
/* .. External Functions .. */
|
/* .. External Functions .. */
|
||||||
@ -100,39 +120,70 @@ static integer c__1 = 1;
|
|||||||
--work;
|
--work;
|
||||||
|
|
||||||
/* Function Body */
|
/* Function Body */
|
||||||
if (lsame_(side, "L")) {
|
applyleft = lsame_(side, "L");
|
||||||
|
lastv = 0;
|
||||||
|
lastc = 0;
|
||||||
|
if (*tau != 0.) {
|
||||||
|
/* Set up variables for scanning V. LASTV begins pointing to the end */
|
||||||
|
/* of V. */
|
||||||
|
if (applyleft) {
|
||||||
|
lastv = *m;
|
||||||
|
} else {
|
||||||
|
lastv = *n;
|
||||||
|
}
|
||||||
|
if (*incv > 0) {
|
||||||
|
i__ = (lastv - 1) * *incv + 1;
|
||||||
|
} else {
|
||||||
|
i__ = 1;
|
||||||
|
}
|
||||||
|
/* Look for the last non-zero row in V. */
|
||||||
|
while(lastv > 0 && v[i__] == 0.) {
|
||||||
|
--lastv;
|
||||||
|
i__ -= *incv;
|
||||||
|
}
|
||||||
|
if (applyleft) {
|
||||||
|
/* Scan for the last non-zero column in C(1:lastv,:). */
|
||||||
|
lastc = iladlc_(&lastv, n, &c__[c_offset], ldc);
|
||||||
|
} else {
|
||||||
|
/* Scan for the last non-zero row in C(:,1:lastv). */
|
||||||
|
lastc = iladlr_(m, &lastv, &c__[c_offset], ldc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* Note that lastc.eq.0 renders the BLAS operations null; no special */
|
||||||
|
/* case is needed at this level. */
|
||||||
|
if (applyleft) {
|
||||||
|
|
||||||
/* Form H * C */
|
/* Form H * C */
|
||||||
|
|
||||||
if (*tau != 0.) {
|
if (lastv > 0) {
|
||||||
|
|
||||||
/* w := C' * v */
|
/* w(1:lastc,1) := C(1:lastv,1:lastc)' * v(1:lastv,1) */
|
||||||
|
|
||||||
dgemv_("Transpose", m, n, &c_b4, &c__[c_offset], ldc, &v[1], incv,
|
dgemv_("Transpose", &lastv, &lastc, &c_b4, &c__[c_offset], ldc, &
|
||||||
&c_b5, &work[1], &c__1);
|
v[1], incv, &c_b5, &work[1], &c__1);
|
||||||
|
|
||||||
/* C := C - v * w' */
|
/* C(1:lastv,1:lastc) := C(...) - v(1:lastv,1) * w(1:lastc,1)' */
|
||||||
|
|
||||||
d__1 = -(*tau);
|
d__1 = -(*tau);
|
||||||
dger_(m, n, &d__1, &v[1], incv, &work[1], &c__1, &c__[c_offset],
|
dger_(&lastv, &lastc, &d__1, &v[1], incv, &work[1], &c__1, &c__[
|
||||||
ldc);
|
c_offset], ldc);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/* Form C * H */
|
/* Form C * H */
|
||||||
|
|
||||||
if (*tau != 0.) {
|
if (lastv > 0) {
|
||||||
|
|
||||||
/* w := C * v */
|
/* w(1:lastc,1) := C(1:lastc,1:lastv) * v(1:lastv,1) */
|
||||||
|
|
||||||
dgemv_("No transpose", m, n, &c_b4, &c__[c_offset], ldc, &v[1],
|
dgemv_("No transpose", &lastc, &lastv, &c_b4, &c__[c_offset], ldc,
|
||||||
incv, &c_b5, &work[1], &c__1);
|
&v[1], incv, &c_b5, &work[1], &c__1);
|
||||||
|
|
||||||
/* C := C - w * v' */
|
/* C(1:lastc,1:lastv) := C(...) - w(1:lastc,1) * v(1:lastv,1)' */
|
||||||
|
|
||||||
d__1 = -(*tau);
|
d__1 = -(*tau);
|
||||||
dger_(m, n, &d__1, &work[1], &c__1, &v[1], incv, &c__[c_offset],
|
dger_(&lastc, &lastv, &d__1, &work[1], &c__1, &v[1], incv, &c__[
|
||||||
ldc);
|
c_offset], ldc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
364
3rdparty/lapack/dlarfb.c
vendored
364
3rdparty/lapack/dlarfb.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarfb.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -21,14 +34,18 @@ static doublereal c_b25 = -1.;
|
|||||||
integer *, doublereal *, doublereal *, integer *, doublereal *,
|
integer *, doublereal *, doublereal *, integer *, doublereal *,
|
||||||
integer *, doublereal *, doublereal *, integer *);
|
integer *, doublereal *, doublereal *, integer *);
|
||||||
extern logical lsame_(char *, char *);
|
extern logical lsame_(char *, char *);
|
||||||
|
integer lastc;
|
||||||
extern /* Subroutine */ int dcopy_(integer *, doublereal *, integer *,
|
extern /* Subroutine */ int dcopy_(integer *, doublereal *, integer *,
|
||||||
doublereal *, integer *), dtrmm_(char *, char *, char *, char *,
|
doublereal *, integer *), dtrmm_(char *, char *, char *, char *,
|
||||||
integer *, integer *, doublereal *, doublereal *, integer *,
|
integer *, integer *, doublereal *, doublereal *, integer *,
|
||||||
doublereal *, integer *);
|
doublereal *, integer *);
|
||||||
|
integer lastv;
|
||||||
|
extern integer iladlc_(integer *, integer *, doublereal *, integer *),
|
||||||
|
iladlr_(integer *, integer *, doublereal *, integer *);
|
||||||
char transt[1];
|
char transt[1];
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -161,58 +178,64 @@ static doublereal c_b25 = -1.;
|
|||||||
/* Form H * C or H' * C where C = ( C1 ) */
|
/* Form H * C or H' * C where C = ( C1 ) */
|
||||||
/* ( C2 ) */
|
/* ( C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlr_(m, k, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlc_(&lastv, n, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C' * V = (C1'*V1 + C2'*V2) (stored in WORK) */
|
/* W := C' * V = (C1'*V1 + C2'*V2) (stored in WORK) */
|
||||||
|
|
||||||
/* W := C1' */
|
/* W := C1' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(n, &c__[j + c_dim1], ldc, &work[j * work_dim1 + 1],
|
dcopy_(&lastc, &c__[j + c_dim1], ldc, &work[j * work_dim1
|
||||||
&c__1);
|
+ 1], &c__1);
|
||||||
/* L10: */
|
/* L10: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1 */
|
/* W := W * V1 */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "No transpose", "Unit", n, k, &c_b14,
|
dtrmm_("Right", "Lower", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C2'*V2 */
|
/* W := W + C2'*V2 */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "No transpose", n, k, &i__1, &c_b14, &
|
dgemm_("Transpose", "No transpose", &lastc, k, &i__1, &
|
||||||
c__[*k + 1 + c_dim1], ldc, &v[*k + 1 + v_dim1],
|
c_b14, &c__[*k + 1 + c_dim1], ldc, &v[*k + 1 +
|
||||||
ldv, &c_b14, &work[work_offset], ldwork);
|
v_dim1], ldv, &c_b14, &work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T' or W * T */
|
/* W := W * T' or W * T */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", transt, "Non-unit", n, k, &c_b14, &t[
|
dtrmm_("Right", "Upper", transt, "Non-unit", &lastc, k, &
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
c_b14, &t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - V * W' */
|
/* C := C - V * W' */
|
||||||
|
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C2 := C2 - V2 * W' */
|
/* C2 := C2 - V2 * W' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", &i__1, n, k, &c_b25, &
|
dgemm_("No transpose", "Transpose", &i__1, &lastc, k, &
|
||||||
v[*k + 1 + v_dim1], ldv, &work[work_offset],
|
c_b25, &v[*k + 1 + v_dim1], ldv, &work[
|
||||||
ldwork, &c_b14, &c__[*k + 1 + c_dim1], ldc);
|
work_offset], ldwork, &c_b14, &c__[*k + 1 +
|
||||||
|
c_dim1], ldc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1' */
|
/* W := W * V1' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "Transpose", "Unit", n, k, &c_b14, &
|
dtrmm_("Right", "Lower", "Transpose", "Unit", &lastc, k, &
|
||||||
v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C1 := C1 - W' */
|
/* C1 := C1 - W' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *n;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[j + i__ * c_dim1] -= work[i__ + j * work_dim1];
|
c__[j + i__ * c_dim1] -= work[i__ + j * work_dim1];
|
||||||
/* L20: */
|
/* L20: */
|
||||||
@ -224,27 +247,32 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlr_(n, k, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlr_(m, &lastv, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C * V = (C1*V1 + C2*V2) (stored in WORK) */
|
/* W := C * V = (C1*V1 + C2*V2) (stored in WORK) */
|
||||||
|
|
||||||
/* W := C1 */
|
/* W := C1 */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(m, &c__[j * c_dim1 + 1], &c__1, &work[j *
|
dcopy_(&lastc, &c__[j * c_dim1 + 1], &c__1, &work[j *
|
||||||
work_dim1 + 1], &c__1);
|
work_dim1 + 1], &c__1);
|
||||||
/* L40: */
|
/* L40: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1 */
|
/* W := W * V1 */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "No transpose", "Unit", m, k, &c_b14,
|
dtrmm_("Right", "Lower", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C2 * V2 */
|
/* W := W + C2 * V2 */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "No transpose", m, k, &i__1, &
|
dgemm_("No transpose", "No transpose", &lastc, k, &i__1, &
|
||||||
c_b14, &c__[(*k + 1) * c_dim1 + 1], ldc, &v[*k +
|
c_b14, &c__[(*k + 1) * c_dim1 + 1], ldc, &v[*k +
|
||||||
1 + v_dim1], ldv, &c_b14, &work[work_offset],
|
1 + v_dim1], ldv, &c_b14, &work[work_offset],
|
||||||
ldwork);
|
ldwork);
|
||||||
@ -252,31 +280,32 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* W := W * T or W * T' */
|
/* W := W * T or W * T' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", trans, "Non-unit", m, k, &c_b14, &t[
|
dtrmm_("Right", "Upper", trans, "Non-unit", &lastc, k, &c_b14,
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
&t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - W * V' */
|
/* C := C - W * V' */
|
||||||
|
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C2 := C2 - W * V2' */
|
/* C2 := C2 - W * V2' */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", m, &i__1, k, &c_b25, &
|
dgemm_("No transpose", "Transpose", &lastc, &i__1, k, &
|
||||||
work[work_offset], ldwork, &v[*k + 1 + v_dim1],
|
c_b25, &work[work_offset], ldwork, &v[*k + 1 +
|
||||||
ldv, &c_b14, &c__[(*k + 1) * c_dim1 + 1], ldc);
|
v_dim1], ldv, &c_b14, &c__[(*k + 1) * c_dim1 + 1],
|
||||||
|
ldc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1' */
|
/* W := W * V1' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "Transpose", "Unit", m, k, &c_b14, &
|
dtrmm_("Right", "Lower", "Transpose", "Unit", &lastc, k, &
|
||||||
v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C1 := C1 - W */
|
/* C1 := C1 - W */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *m;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[i__ + j * c_dim1] -= work[i__ + j * work_dim1];
|
c__[i__ + j * c_dim1] -= work[i__ + j * work_dim1];
|
||||||
/* L50: */
|
/* L50: */
|
||||||
@ -296,63 +325,67 @@ static doublereal c_b25 = -1.;
|
|||||||
/* Form H * C or H' * C where C = ( C1 ) */
|
/* Form H * C or H' * C where C = ( C1 ) */
|
||||||
/* ( C2 ) */
|
/* ( C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlr_(m, k, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlc_(&lastv, n, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C' * V = (C1'*V1 + C2'*V2) (stored in WORK) */
|
/* W := C' * V = (C1'*V1 + C2'*V2) (stored in WORK) */
|
||||||
|
|
||||||
/* W := C2' */
|
/* W := C2' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(n, &c__[*m - *k + j + c_dim1], ldc, &work[j *
|
dcopy_(&lastc, &c__[lastv - *k + j + c_dim1], ldc, &work[
|
||||||
work_dim1 + 1], &c__1);
|
j * work_dim1 + 1], &c__1);
|
||||||
/* L70: */
|
/* L70: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2 */
|
/* W := W * V2 */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "No transpose", "Unit", n, k, &c_b14,
|
dtrmm_("Right", "Upper", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[*m - *k + 1 + v_dim1], ldv, &work[work_offset],
|
c_b14, &v[lastv - *k + 1 + v_dim1], ldv, &work[
|
||||||
ldwork);
|
work_offset], ldwork);
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C1'*V1 */
|
/* W := W + C1'*V1 */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "No transpose", n, k, &i__1, &c_b14, &
|
dgemm_("Transpose", "No transpose", &lastc, k, &i__1, &
|
||||||
c__[c_offset], ldc, &v[v_offset], ldv, &c_b14, &
|
c_b14, &c__[c_offset], ldc, &v[v_offset], ldv, &
|
||||||
work[work_offset], ldwork);
|
c_b14, &work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T' or W * T */
|
/* W := W * T' or W * T */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", transt, "Non-unit", n, k, &c_b14, &t[
|
dtrmm_("Right", "Lower", transt, "Non-unit", &lastc, k, &
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
c_b14, &t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - V * W' */
|
/* C := C - V * W' */
|
||||||
|
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C1 := C1 - V1 * W' */
|
/* C1 := C1 - V1 * W' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", &i__1, n, k, &c_b25, &
|
dgemm_("No transpose", "Transpose", &i__1, &lastc, k, &
|
||||||
v[v_offset], ldv, &work[work_offset], ldwork, &
|
c_b25, &v[v_offset], ldv, &work[work_offset],
|
||||||
c_b14, &c__[c_offset], ldc)
|
ldwork, &c_b14, &c__[c_offset], ldc);
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2' */
|
/* W := W * V2' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "Transpose", "Unit", n, k, &c_b14, &
|
dtrmm_("Right", "Upper", "Transpose", "Unit", &lastc, k, &
|
||||||
v[*m - *k + 1 + v_dim1], ldv, &work[work_offset],
|
c_b14, &v[lastv - *k + 1 + v_dim1], ldv, &work[
|
||||||
ldwork);
|
work_offset], ldwork);
|
||||||
|
|
||||||
/* C2 := C2 - W' */
|
/* C2 := C2 - W' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *n;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[*m - *k + j + i__ * c_dim1] -= work[i__ + j *
|
c__[lastv - *k + j + i__ * c_dim1] -= work[i__ + j *
|
||||||
work_dim1];
|
work_dim1];
|
||||||
/* L80: */
|
/* L80: */
|
||||||
}
|
}
|
||||||
@ -363,63 +396,67 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlr_(n, k, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlr_(m, &lastv, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C * V = (C1*V1 + C2*V2) (stored in WORK) */
|
/* W := C * V = (C1*V1 + C2*V2) (stored in WORK) */
|
||||||
|
|
||||||
/* W := C2 */
|
/* W := C2 */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(m, &c__[(*n - *k + j) * c_dim1 + 1], &c__1, &work[
|
dcopy_(&lastc, &c__[(*n - *k + j) * c_dim1 + 1], &c__1, &
|
||||||
j * work_dim1 + 1], &c__1);
|
work[j * work_dim1 + 1], &c__1);
|
||||||
/* L100: */
|
/* L100: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2 */
|
/* W := W * V2 */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "No transpose", "Unit", m, k, &c_b14,
|
dtrmm_("Right", "Upper", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[*n - *k + 1 + v_dim1], ldv, &work[work_offset],
|
c_b14, &v[lastv - *k + 1 + v_dim1], ldv, &work[
|
||||||
ldwork);
|
work_offset], ldwork);
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C1 * V1 */
|
/* W := W + C1 * V1 */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "No transpose", m, k, &i__1, &
|
dgemm_("No transpose", "No transpose", &lastc, k, &i__1, &
|
||||||
c_b14, &c__[c_offset], ldc, &v[v_offset], ldv, &
|
c_b14, &c__[c_offset], ldc, &v[v_offset], ldv, &
|
||||||
c_b14, &work[work_offset], ldwork);
|
c_b14, &work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T or W * T' */
|
/* W := W * T or W * T' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", trans, "Non-unit", m, k, &c_b14, &t[
|
dtrmm_("Right", "Lower", trans, "Non-unit", &lastc, k, &c_b14,
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
&t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - W * V' */
|
/* C := C - W * V' */
|
||||||
|
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C1 := C1 - W * V1' */
|
/* C1 := C1 - W * V1' */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", m, &i__1, k, &c_b25, &
|
dgemm_("No transpose", "Transpose", &lastc, &i__1, k, &
|
||||||
work[work_offset], ldwork, &v[v_offset], ldv, &
|
c_b25, &work[work_offset], ldwork, &v[v_offset],
|
||||||
c_b14, &c__[c_offset], ldc)
|
ldv, &c_b14, &c__[c_offset], ldc);
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2' */
|
/* W := W * V2' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "Transpose", "Unit", m, k, &c_b14, &
|
dtrmm_("Right", "Upper", "Transpose", "Unit", &lastc, k, &
|
||||||
v[*n - *k + 1 + v_dim1], ldv, &work[work_offset],
|
c_b14, &v[lastv - *k + 1 + v_dim1], ldv, &work[
|
||||||
ldwork);
|
work_offset], ldwork);
|
||||||
|
|
||||||
/* C2 := C2 - W */
|
/* C2 := C2 - W */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *m;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[i__ + (*n - *k + j) * c_dim1] -= work[i__ + j *
|
c__[i__ + (lastv - *k + j) * c_dim1] -= work[i__ + j *
|
||||||
work_dim1];
|
work_dim1];
|
||||||
/* L110: */
|
/* L110: */
|
||||||
}
|
}
|
||||||
@ -440,58 +477,64 @@ static doublereal c_b25 = -1.;
|
|||||||
/* Form H * C or H' * C where C = ( C1 ) */
|
/* Form H * C or H' * C where C = ( C1 ) */
|
||||||
/* ( C2 ) */
|
/* ( C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlc_(k, m, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlc_(&lastv, n, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C' * V' = (C1'*V1' + C2'*V2') (stored in WORK) */
|
/* W := C' * V' = (C1'*V1' + C2'*V2') (stored in WORK) */
|
||||||
|
|
||||||
/* W := C1' */
|
/* W := C1' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(n, &c__[j + c_dim1], ldc, &work[j * work_dim1 + 1],
|
dcopy_(&lastc, &c__[j + c_dim1], ldc, &work[j * work_dim1
|
||||||
&c__1);
|
+ 1], &c__1);
|
||||||
/* L130: */
|
/* L130: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1' */
|
/* W := W * V1' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "Transpose", "Unit", n, k, &c_b14, &
|
dtrmm_("Right", "Upper", "Transpose", "Unit", &lastc, k, &
|
||||||
v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C2'*V2' */
|
/* W := W + C2'*V2' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "Transpose", n, k, &i__1, &c_b14, &
|
dgemm_("Transpose", "Transpose", &lastc, k, &i__1, &c_b14,
|
||||||
c__[*k + 1 + c_dim1], ldc, &v[(*k + 1) * v_dim1 +
|
&c__[*k + 1 + c_dim1], ldc, &v[(*k + 1) * v_dim1
|
||||||
1], ldv, &c_b14, &work[work_offset], ldwork);
|
+ 1], ldv, &c_b14, &work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T' or W * T */
|
/* W := W * T' or W * T */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", transt, "Non-unit", n, k, &c_b14, &t[
|
dtrmm_("Right", "Upper", transt, "Non-unit", &lastc, k, &
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
c_b14, &t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - V' * W' */
|
/* C := C - V' * W' */
|
||||||
|
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C2 := C2 - V2' * W' */
|
/* C2 := C2 - V2' * W' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "Transpose", &i__1, n, k, &c_b25, &v[(
|
dgemm_("Transpose", "Transpose", &i__1, &lastc, k, &c_b25,
|
||||||
*k + 1) * v_dim1 + 1], ldv, &work[work_offset],
|
&v[(*k + 1) * v_dim1 + 1], ldv, &work[
|
||||||
ldwork, &c_b14, &c__[*k + 1 + c_dim1], ldc);
|
work_offset], ldwork, &c_b14, &c__[*k + 1 +
|
||||||
|
c_dim1], ldc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1 */
|
/* W := W * V1 */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "No transpose", "Unit", n, k, &c_b14,
|
dtrmm_("Right", "Upper", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C1 := C1 - W' */
|
/* C1 := C1 - W' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *n;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[j + i__ * c_dim1] -= work[i__ + j * work_dim1];
|
c__[j + i__ * c_dim1] -= work[i__ + j * work_dim1];
|
||||||
/* L140: */
|
/* L140: */
|
||||||
@ -503,45 +546,50 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlc_(k, n, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlr_(m, &lastv, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C * V' = (C1*V1' + C2*V2') (stored in WORK) */
|
/* W := C * V' = (C1*V1' + C2*V2') (stored in WORK) */
|
||||||
|
|
||||||
/* W := C1 */
|
/* W := C1 */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(m, &c__[j * c_dim1 + 1], &c__1, &work[j *
|
dcopy_(&lastc, &c__[j * c_dim1 + 1], &c__1, &work[j *
|
||||||
work_dim1 + 1], &c__1);
|
work_dim1 + 1], &c__1);
|
||||||
/* L160: */
|
/* L160: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V1' */
|
/* W := W * V1' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "Transpose", "Unit", m, k, &c_b14, &
|
dtrmm_("Right", "Upper", "Transpose", "Unit", &lastc, k, &
|
||||||
v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C2 * V2' */
|
/* W := W + C2 * V2' */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", m, k, &i__1, &c_b14, &
|
dgemm_("No transpose", "Transpose", &lastc, k, &i__1, &
|
||||||
c__[(*k + 1) * c_dim1 + 1], ldc, &v[(*k + 1) *
|
c_b14, &c__[(*k + 1) * c_dim1 + 1], ldc, &v[(*k +
|
||||||
v_dim1 + 1], ldv, &c_b14, &work[work_offset],
|
1) * v_dim1 + 1], ldv, &c_b14, &work[work_offset],
|
||||||
ldwork);
|
ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T or W * T' */
|
/* W := W * T or W * T' */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", trans, "Non-unit", m, k, &c_b14, &t[
|
dtrmm_("Right", "Upper", trans, "Non-unit", &lastc, k, &c_b14,
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
&t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - W * V */
|
/* C := C - W * V */
|
||||||
|
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C2 := C2 - W * V2 */
|
/* C2 := C2 - W * V2 */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "No transpose", m, &i__1, k, &
|
dgemm_("No transpose", "No transpose", &lastc, &i__1, k, &
|
||||||
c_b25, &work[work_offset], ldwork, &v[(*k + 1) *
|
c_b25, &work[work_offset], ldwork, &v[(*k + 1) *
|
||||||
v_dim1 + 1], ldv, &c_b14, &c__[(*k + 1) * c_dim1
|
v_dim1 + 1], ldv, &c_b14, &c__[(*k + 1) * c_dim1
|
||||||
+ 1], ldc);
|
+ 1], ldc);
|
||||||
@ -549,14 +597,14 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* W := W * V1 */
|
/* W := W * V1 */
|
||||||
|
|
||||||
dtrmm_("Right", "Upper", "No transpose", "Unit", m, k, &c_b14,
|
dtrmm_("Right", "Upper", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[v_offset], ldv, &work[work_offset], ldwork);
|
c_b14, &v[v_offset], ldv, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C1 := C1 - W */
|
/* C1 := C1 - W */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *m;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[i__ + j * c_dim1] -= work[i__ + j * work_dim1];
|
c__[i__ + j * c_dim1] -= work[i__ + j * work_dim1];
|
||||||
/* L170: */
|
/* L170: */
|
||||||
@ -576,62 +624,67 @@ static doublereal c_b25 = -1.;
|
|||||||
/* Form H * C or H' * C where C = ( C1 ) */
|
/* Form H * C or H' * C where C = ( C1 ) */
|
||||||
/* ( C2 ) */
|
/* ( C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlc_(k, m, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlc_(&lastv, n, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C' * V' = (C1'*V1' + C2'*V2') (stored in WORK) */
|
/* W := C' * V' = (C1'*V1' + C2'*V2') (stored in WORK) */
|
||||||
|
|
||||||
/* W := C2' */
|
/* W := C2' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(n, &c__[*m - *k + j + c_dim1], ldc, &work[j *
|
dcopy_(&lastc, &c__[lastv - *k + j + c_dim1], ldc, &work[
|
||||||
work_dim1 + 1], &c__1);
|
j * work_dim1 + 1], &c__1);
|
||||||
/* L190: */
|
/* L190: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2' */
|
/* W := W * V2' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "Transpose", "Unit", n, k, &c_b14, &
|
dtrmm_("Right", "Lower", "Transpose", "Unit", &lastc, k, &
|
||||||
v[(*m - *k + 1) * v_dim1 + 1], ldv, &work[work_offset]
|
c_b14, &v[(lastv - *k + 1) * v_dim1 + 1], ldv, &work[
|
||||||
, ldwork);
|
work_offset], ldwork);
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C1'*V1' */
|
/* W := W + C1'*V1' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "Transpose", n, k, &i__1, &c_b14, &
|
dgemm_("Transpose", "Transpose", &lastc, k, &i__1, &c_b14,
|
||||||
c__[c_offset], ldc, &v[v_offset], ldv, &c_b14, &
|
&c__[c_offset], ldc, &v[v_offset], ldv, &c_b14, &
|
||||||
work[work_offset], ldwork);
|
work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T' or W * T */
|
/* W := W * T' or W * T */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", transt, "Non-unit", n, k, &c_b14, &t[
|
dtrmm_("Right", "Lower", transt, "Non-unit", &lastc, k, &
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
c_b14, &t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - V' * W' */
|
/* C := C - V' * W' */
|
||||||
|
|
||||||
if (*m > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C1 := C1 - V1' * W' */
|
/* C1 := C1 - V1' * W' */
|
||||||
|
|
||||||
i__1 = *m - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("Transpose", "Transpose", &i__1, n, k, &c_b25, &v[
|
dgemm_("Transpose", "Transpose", &i__1, &lastc, k, &c_b25,
|
||||||
v_offset], ldv, &work[work_offset], ldwork, &
|
&v[v_offset], ldv, &work[work_offset], ldwork, &
|
||||||
c_b14, &c__[c_offset], ldc);
|
c_b14, &c__[c_offset], ldc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2 */
|
/* W := W * V2 */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "No transpose", "Unit", n, k, &c_b14,
|
dtrmm_("Right", "Lower", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[(*m - *k + 1) * v_dim1 + 1], ldv, &work[
|
c_b14, &v[(lastv - *k + 1) * v_dim1 + 1], ldv, &work[
|
||||||
work_offset], ldwork);
|
work_offset], ldwork);
|
||||||
|
|
||||||
/* C2 := C2 - W' */
|
/* C2 := C2 - W' */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *n;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[*m - *k + j + i__ * c_dim1] -= work[i__ + j *
|
c__[lastv - *k + j + i__ * c_dim1] -= work[i__ + j *
|
||||||
work_dim1];
|
work_dim1];
|
||||||
/* L200: */
|
/* L200: */
|
||||||
}
|
}
|
||||||
@ -642,62 +695,67 @@ static doublereal c_b25 = -1.;
|
|||||||
|
|
||||||
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
/* Form C * H or C * H' where C = ( C1 C2 ) */
|
||||||
|
|
||||||
|
/* Computing MAX */
|
||||||
|
i__1 = *k, i__2 = iladlc_(k, n, &v[v_offset], ldv);
|
||||||
|
lastv = max(i__1,i__2);
|
||||||
|
lastc = iladlr_(m, &lastv, &c__[c_offset], ldc);
|
||||||
|
|
||||||
/* W := C * V' = (C1*V1' + C2*V2') (stored in WORK) */
|
/* W := C * V' = (C1*V1' + C2*V2') (stored in WORK) */
|
||||||
|
|
||||||
/* W := C2 */
|
/* W := C2 */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
dcopy_(m, &c__[(*n - *k + j) * c_dim1 + 1], &c__1, &work[
|
dcopy_(&lastc, &c__[(lastv - *k + j) * c_dim1 + 1], &c__1,
|
||||||
j * work_dim1 + 1], &c__1);
|
&work[j * work_dim1 + 1], &c__1);
|
||||||
/* L220: */
|
/* L220: */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2' */
|
/* W := W * V2' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "Transpose", "Unit", m, k, &c_b14, &
|
dtrmm_("Right", "Lower", "Transpose", "Unit", &lastc, k, &
|
||||||
v[(*n - *k + 1) * v_dim1 + 1], ldv, &work[work_offset]
|
c_b14, &v[(lastv - *k + 1) * v_dim1 + 1], ldv, &work[
|
||||||
, ldwork);
|
work_offset], ldwork);
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* W := W + C1 * V1' */
|
/* W := W + C1 * V1' */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "Transpose", m, k, &i__1, &c_b14, &
|
dgemm_("No transpose", "Transpose", &lastc, k, &i__1, &
|
||||||
c__[c_offset], ldc, &v[v_offset], ldv, &c_b14, &
|
c_b14, &c__[c_offset], ldc, &v[v_offset], ldv, &
|
||||||
work[work_offset], ldwork);
|
c_b14, &work[work_offset], ldwork);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * T or W * T' */
|
/* W := W * T or W * T' */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", trans, "Non-unit", m, k, &c_b14, &t[
|
dtrmm_("Right", "Lower", trans, "Non-unit", &lastc, k, &c_b14,
|
||||||
t_offset], ldt, &work[work_offset], ldwork);
|
&t[t_offset], ldt, &work[work_offset], ldwork);
|
||||||
|
|
||||||
/* C := C - W * V */
|
/* C := C - W * V */
|
||||||
|
|
||||||
if (*n > *k) {
|
if (lastv > *k) {
|
||||||
|
|
||||||
/* C1 := C1 - W * V1 */
|
/* C1 := C1 - W * V1 */
|
||||||
|
|
||||||
i__1 = *n - *k;
|
i__1 = lastv - *k;
|
||||||
dgemm_("No transpose", "No transpose", m, &i__1, k, &
|
dgemm_("No transpose", "No transpose", &lastc, &i__1, k, &
|
||||||
c_b25, &work[work_offset], ldwork, &v[v_offset],
|
c_b25, &work[work_offset], ldwork, &v[v_offset],
|
||||||
ldv, &c_b14, &c__[c_offset], ldc);
|
ldv, &c_b14, &c__[c_offset], ldc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* W := W * V2 */
|
/* W := W * V2 */
|
||||||
|
|
||||||
dtrmm_("Right", "Lower", "No transpose", "Unit", m, k, &c_b14,
|
dtrmm_("Right", "Lower", "No transpose", "Unit", &lastc, k, &
|
||||||
&v[(*n - *k + 1) * v_dim1 + 1], ldv, &work[
|
c_b14, &v[(lastv - *k + 1) * v_dim1 + 1], ldv, &work[
|
||||||
work_offset], ldwork);
|
work_offset], ldwork);
|
||||||
|
|
||||||
/* C1 := C1 - W */
|
/* C1 := C1 - W */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
i__2 = *m;
|
i__2 = lastc;
|
||||||
for (i__ = 1; i__ <= i__2; ++i__) {
|
for (i__ = 1; i__ <= i__2; ++i__) {
|
||||||
c__[i__ + (*n - *k + j) * c_dim1] -= work[i__ + j *
|
c__[i__ + (lastv - *k + j) * c_dim1] -= work[i__ + j *
|
||||||
work_dim1];
|
work_dim1];
|
||||||
/* L230: */
|
/* L230: */
|
||||||
}
|
}
|
||||||
|
27
3rdparty/lapack/dlarfg.c
vendored
27
3rdparty/lapack/dlarfg.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarfg.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarfg_(integer *n, doublereal *alpha, doublereal *x,
|
/* Subroutine */ int dlarfg_(integer *n, doublereal *alpha, doublereal *x,
|
||||||
integer *incx, doublereal *tau)
|
integer *incx, doublereal *tau)
|
||||||
{
|
{
|
||||||
@ -21,7 +34,7 @@
|
|||||||
doublereal safmin, rsafmn;
|
doublereal safmin, rsafmn;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -112,12 +125,12 @@
|
|||||||
d__1 = dlapy2_(alpha, &xnorm);
|
d__1 = dlapy2_(alpha, &xnorm);
|
||||||
beta = -d_sign(&d__1, alpha);
|
beta = -d_sign(&d__1, alpha);
|
||||||
safmin = dlamch_("S") / dlamch_("E");
|
safmin = dlamch_("S") / dlamch_("E");
|
||||||
|
knt = 0;
|
||||||
if (abs(beta) < safmin) {
|
if (abs(beta) < safmin) {
|
||||||
|
|
||||||
/* XNORM, BETA may be inaccurate; scale X and recompute them */
|
/* XNORM, BETA may be inaccurate; scale X and recompute them */
|
||||||
|
|
||||||
rsafmn = 1. / safmin;
|
rsafmn = 1. / safmin;
|
||||||
knt = 0;
|
|
||||||
L10:
|
L10:
|
||||||
++knt;
|
++knt;
|
||||||
i__1 = *n - 1;
|
i__1 = *n - 1;
|
||||||
@ -134,6 +147,7 @@ L10:
|
|||||||
xnorm = dnrm2_(&i__1, &x[1], incx);
|
xnorm = dnrm2_(&i__1, &x[1], incx);
|
||||||
d__1 = dlapy2_(alpha, &xnorm);
|
d__1 = dlapy2_(alpha, &xnorm);
|
||||||
beta = -d_sign(&d__1, alpha);
|
beta = -d_sign(&d__1, alpha);
|
||||||
|
}
|
||||||
*tau = (beta - *alpha) / beta;
|
*tau = (beta - *alpha) / beta;
|
||||||
i__1 = *n - 1;
|
i__1 = *n - 1;
|
||||||
d__1 = 1. / (*alpha - beta);
|
d__1 = 1. / (*alpha - beta);
|
||||||
@ -141,20 +155,13 @@ L10:
|
|||||||
|
|
||||||
/* If ALPHA is subnormal, it may lose relative accuracy */
|
/* If ALPHA is subnormal, it may lose relative accuracy */
|
||||||
|
|
||||||
*alpha = beta;
|
|
||||||
i__1 = knt;
|
i__1 = knt;
|
||||||
for (j = 1; j <= i__1; ++j) {
|
for (j = 1; j <= i__1; ++j) {
|
||||||
*alpha *= safmin;
|
beta *= safmin;
|
||||||
/* L20: */
|
/* L20: */
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
*tau = (beta - *alpha) / beta;
|
|
||||||
i__1 = *n - 1;
|
|
||||||
d__1 = 1. / (*alpha - beta);
|
|
||||||
dscal_(&i__1, &d__1, &x[1], incx);
|
|
||||||
*alpha = beta;
|
*alpha = beta;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
192
3rdparty/lapack/dlarfp.c
vendored
Normal file
192
3rdparty/lapack/dlarfp.c
vendored
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
/* dlarfp.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
|
/* Subroutine */ int dlarfp_(integer *n, doublereal *alpha, doublereal *x,
|
||||||
|
integer *incx, doublereal *tau)
|
||||||
|
{
|
||||||
|
/* System generated locals */
|
||||||
|
integer i__1;
|
||||||
|
doublereal d__1;
|
||||||
|
|
||||||
|
/* Builtin functions */
|
||||||
|
double d_sign(doublereal *, doublereal *);
|
||||||
|
|
||||||
|
/* Local variables */
|
||||||
|
integer j, knt;
|
||||||
|
doublereal beta;
|
||||||
|
extern doublereal dnrm2_(integer *, doublereal *, integer *);
|
||||||
|
extern /* Subroutine */ int dscal_(integer *, doublereal *, doublereal *,
|
||||||
|
integer *);
|
||||||
|
doublereal xnorm;
|
||||||
|
extern doublereal dlapy2_(doublereal *, doublereal *), dlamch_(char *);
|
||||||
|
doublereal safmin, rsafmn;
|
||||||
|
|
||||||
|
|
||||||
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
|
/* November 2006 */
|
||||||
|
|
||||||
|
/* .. Scalar Arguments .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. Array Arguments .. */
|
||||||
|
/* .. */
|
||||||
|
|
||||||
|
/* Purpose */
|
||||||
|
/* ======= */
|
||||||
|
|
||||||
|
/* DLARFP generates a real elementary reflector H of order n, such */
|
||||||
|
/* that */
|
||||||
|
|
||||||
|
/* H * ( alpha ) = ( beta ), H' * H = I. */
|
||||||
|
/* ( x ) ( 0 ) */
|
||||||
|
|
||||||
|
/* where alpha and beta are scalars, beta is non-negative, and x is */
|
||||||
|
/* an (n-1)-element real vector. H is represented in the form */
|
||||||
|
|
||||||
|
/* H = I - tau * ( 1 ) * ( 1 v' ) , */
|
||||||
|
/* ( v ) */
|
||||||
|
|
||||||
|
/* where tau is a real scalar and v is a real (n-1)-element */
|
||||||
|
/* vector. */
|
||||||
|
|
||||||
|
/* If the elements of x are all zero, then tau = 0 and H is taken to be */
|
||||||
|
/* the unit matrix. */
|
||||||
|
|
||||||
|
/* Otherwise 1 <= tau <= 2. */
|
||||||
|
|
||||||
|
/* Arguments */
|
||||||
|
/* ========= */
|
||||||
|
|
||||||
|
/* N (input) INTEGER */
|
||||||
|
/* The order of the elementary reflector. */
|
||||||
|
|
||||||
|
/* ALPHA (input/output) DOUBLE PRECISION */
|
||||||
|
/* On entry, the value alpha. */
|
||||||
|
/* On exit, it is overwritten with the value beta. */
|
||||||
|
|
||||||
|
/* X (input/output) DOUBLE PRECISION array, dimension */
|
||||||
|
/* (1+(N-2)*abs(INCX)) */
|
||||||
|
/* On entry, the vector x. */
|
||||||
|
/* On exit, it is overwritten with the vector v. */
|
||||||
|
|
||||||
|
/* INCX (input) INTEGER */
|
||||||
|
/* The increment between elements of X. INCX > 0. */
|
||||||
|
|
||||||
|
/* TAU (output) DOUBLE PRECISION */
|
||||||
|
/* The value tau. */
|
||||||
|
|
||||||
|
/* ===================================================================== */
|
||||||
|
|
||||||
|
/* .. Parameters .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. Local Scalars .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. External Functions .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. Intrinsic Functions .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. External Subroutines .. */
|
||||||
|
/* .. */
|
||||||
|
/* .. Executable Statements .. */
|
||||||
|
|
||||||
|
/* Parameter adjustments */
|
||||||
|
--x;
|
||||||
|
|
||||||
|
/* Function Body */
|
||||||
|
if (*n <= 0) {
|
||||||
|
*tau = 0.;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
i__1 = *n - 1;
|
||||||
|
xnorm = dnrm2_(&i__1, &x[1], incx);
|
||||||
|
|
||||||
|
if (xnorm == 0.) {
|
||||||
|
|
||||||
|
/* H = [+/-1, 0; I], sign chosen so ALPHA >= 0 */
|
||||||
|
|
||||||
|
if (*alpha >= 0.) {
|
||||||
|
/* When TAU.eq.ZERO, the vector is special-cased to be */
|
||||||
|
/* all zeros in the application routines. We do not need */
|
||||||
|
/* to clear it. */
|
||||||
|
*tau = 0.;
|
||||||
|
} else {
|
||||||
|
/* However, the application routines rely on explicit */
|
||||||
|
/* zero checks when TAU.ne.ZERO, and we must clear X. */
|
||||||
|
*tau = 2.;
|
||||||
|
i__1 = *n - 1;
|
||||||
|
for (j = 1; j <= i__1; ++j) {
|
||||||
|
x[(j - 1) * *incx + 1] = 0.;
|
||||||
|
}
|
||||||
|
*alpha = -(*alpha);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
|
||||||
|
/* general case */
|
||||||
|
|
||||||
|
d__1 = dlapy2_(alpha, &xnorm);
|
||||||
|
beta = d_sign(&d__1, alpha);
|
||||||
|
safmin = dlamch_("S") / dlamch_("E");
|
||||||
|
knt = 0;
|
||||||
|
if (abs(beta) < safmin) {
|
||||||
|
|
||||||
|
/* XNORM, BETA may be inaccurate; scale X and recompute them */
|
||||||
|
|
||||||
|
rsafmn = 1. / safmin;
|
||||||
|
L10:
|
||||||
|
++knt;
|
||||||
|
i__1 = *n - 1;
|
||||||
|
dscal_(&i__1, &rsafmn, &x[1], incx);
|
||||||
|
beta *= rsafmn;
|
||||||
|
*alpha *= rsafmn;
|
||||||
|
if (abs(beta) < safmin) {
|
||||||
|
goto L10;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* New BETA is at most 1, at least SAFMIN */
|
||||||
|
|
||||||
|
i__1 = *n - 1;
|
||||||
|
xnorm = dnrm2_(&i__1, &x[1], incx);
|
||||||
|
d__1 = dlapy2_(alpha, &xnorm);
|
||||||
|
beta = d_sign(&d__1, alpha);
|
||||||
|
}
|
||||||
|
*alpha += beta;
|
||||||
|
if (beta < 0.) {
|
||||||
|
beta = -beta;
|
||||||
|
*tau = -(*alpha) / beta;
|
||||||
|
} else {
|
||||||
|
*alpha = xnorm * (xnorm / *alpha);
|
||||||
|
*tau = *alpha / beta;
|
||||||
|
*alpha = -(*alpha);
|
||||||
|
}
|
||||||
|
i__1 = *n - 1;
|
||||||
|
d__1 = 1. / *alpha;
|
||||||
|
dscal_(&i__1, &d__1, &x[1], incx);
|
||||||
|
|
||||||
|
/* If BETA is subnormal, it may lose relative accuracy */
|
||||||
|
|
||||||
|
i__1 = knt;
|
||||||
|
for (j = 1; j <= i__1; ++j) {
|
||||||
|
beta *= safmin;
|
||||||
|
/* L20: */
|
||||||
|
}
|
||||||
|
*alpha = beta;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
/* End of DLARFP */
|
||||||
|
|
||||||
|
} /* dlarfp_ */
|
93
3rdparty/lapack/dlarft.c
vendored
93
3rdparty/lapack/dlarft.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarft.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -14,17 +27,18 @@ static doublereal c_b8 = 0.;
|
|||||||
doublereal d__1;
|
doublereal d__1;
|
||||||
|
|
||||||
/* Local variables */
|
/* Local variables */
|
||||||
integer i__, j;
|
integer i__, j, prevlastv;
|
||||||
doublereal vii;
|
doublereal vii;
|
||||||
extern logical lsame_(char *, char *);
|
extern logical lsame_(char *, char *);
|
||||||
extern /* Subroutine */ int dgemv_(char *, integer *, integer *,
|
extern /* Subroutine */ int dgemv_(char *, integer *, integer *,
|
||||||
doublereal *, doublereal *, integer *, doublereal *, integer *,
|
doublereal *, doublereal *, integer *, doublereal *, integer *,
|
||||||
doublereal *, doublereal *, integer *), dtrmv_(char *,
|
doublereal *, doublereal *, integer *);
|
||||||
char *, char *, integer *, doublereal *, integer *, doublereal *,
|
integer lastv;
|
||||||
integer *);
|
extern /* Subroutine */ int dtrmv_(char *, char *, char *, integer *,
|
||||||
|
doublereal *, integer *, doublereal *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -150,8 +164,10 @@ static doublereal c_b8 = 0.;
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (lsame_(direct, "F")) {
|
if (lsame_(direct, "F")) {
|
||||||
|
prevlastv = *n;
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
for (i__ = 1; i__ <= i__1; ++i__) {
|
for (i__ = 1; i__ <= i__1; ++i__) {
|
||||||
|
prevlastv = max(i__,prevlastv);
|
||||||
if (tau[i__] == 0.) {
|
if (tau[i__] == 0.) {
|
||||||
|
|
||||||
/* H(i) = I */
|
/* H(i) = I */
|
||||||
@ -168,21 +184,37 @@ static doublereal c_b8 = 0.;
|
|||||||
vii = v[i__ + i__ * v_dim1];
|
vii = v[i__ + i__ * v_dim1];
|
||||||
v[i__ + i__ * v_dim1] = 1.;
|
v[i__ + i__ * v_dim1] = 1.;
|
||||||
if (lsame_(storev, "C")) {
|
if (lsame_(storev, "C")) {
|
||||||
|
/* Skip any trailing zeros. */
|
||||||
|
i__2 = i__ + 1;
|
||||||
|
for (lastv = *n; lastv >= i__2; --lastv) {
|
||||||
|
if (v[lastv + i__ * v_dim1] != 0.) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
j = min(lastv,prevlastv);
|
||||||
|
|
||||||
/* T(1:i-1,i) := - tau(i) * V(i:n,1:i-1)' * V(i:n,i) */
|
/* T(1:i-1,i) := - tau(i) * V(i:j,1:i-1)' * V(i:j,i) */
|
||||||
|
|
||||||
i__2 = *n - i__ + 1;
|
i__2 = j - i__ + 1;
|
||||||
i__3 = i__ - 1;
|
i__3 = i__ - 1;
|
||||||
d__1 = -tau[i__];
|
d__1 = -tau[i__];
|
||||||
dgemv_("Transpose", &i__2, &i__3, &d__1, &v[i__ + v_dim1],
|
dgemv_("Transpose", &i__2, &i__3, &d__1, &v[i__ + v_dim1],
|
||||||
ldv, &v[i__ + i__ * v_dim1], &c__1, &c_b8, &t[
|
ldv, &v[i__ + i__ * v_dim1], &c__1, &c_b8, &t[
|
||||||
i__ * t_dim1 + 1], &c__1);
|
i__ * t_dim1 + 1], &c__1);
|
||||||
} else {
|
} else {
|
||||||
|
/* Skip any trailing zeros. */
|
||||||
|
i__2 = i__ + 1;
|
||||||
|
for (lastv = *n; lastv >= i__2; --lastv) {
|
||||||
|
if (v[i__ + lastv * v_dim1] != 0.) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
j = min(lastv,prevlastv);
|
||||||
|
|
||||||
/* T(1:i-1,i) := - tau(i) * V(1:i-1,i:n) * V(i,i:n)' */
|
/* T(1:i-1,i) := - tau(i) * V(1:i-1,i:j) * V(i,i:j)' */
|
||||||
|
|
||||||
i__2 = i__ - 1;
|
i__2 = i__ - 1;
|
||||||
i__3 = *n - i__ + 1;
|
i__3 = j - i__ + 1;
|
||||||
d__1 = -tau[i__];
|
d__1 = -tau[i__];
|
||||||
dgemv_("No transpose", &i__2, &i__3, &d__1, &v[i__ *
|
dgemv_("No transpose", &i__2, &i__3, &d__1, &v[i__ *
|
||||||
v_dim1 + 1], ldv, &v[i__ + i__ * v_dim1], ldv, &
|
v_dim1 + 1], ldv, &v[i__ + i__ * v_dim1], ldv, &
|
||||||
@ -196,10 +228,16 @@ static doublereal c_b8 = 0.;
|
|||||||
dtrmv_("Upper", "No transpose", "Non-unit", &i__2, &t[
|
dtrmv_("Upper", "No transpose", "Non-unit", &i__2, &t[
|
||||||
t_offset], ldt, &t[i__ * t_dim1 + 1], &c__1);
|
t_offset], ldt, &t[i__ * t_dim1 + 1], &c__1);
|
||||||
t[i__ + i__ * t_dim1] = tau[i__];
|
t[i__ + i__ * t_dim1] = tau[i__];
|
||||||
|
if (i__ > 1) {
|
||||||
|
prevlastv = max(prevlastv,lastv);
|
||||||
|
} else {
|
||||||
|
prevlastv = lastv;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/* L20: */
|
/* L20: */
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
prevlastv = 1;
|
||||||
for (i__ = *k; i__ >= 1; --i__) {
|
for (i__ = *k; i__ >= 1; --i__) {
|
||||||
if (tau[i__] == 0.) {
|
if (tau[i__] == 0.) {
|
||||||
|
|
||||||
@ -218,31 +256,47 @@ static doublereal c_b8 = 0.;
|
|||||||
if (lsame_(storev, "C")) {
|
if (lsame_(storev, "C")) {
|
||||||
vii = v[*n - *k + i__ + i__ * v_dim1];
|
vii = v[*n - *k + i__ + i__ * v_dim1];
|
||||||
v[*n - *k + i__ + i__ * v_dim1] = 1.;
|
v[*n - *k + i__ + i__ * v_dim1] = 1.;
|
||||||
|
/* Skip any leading zeros. */
|
||||||
|
i__1 = i__ - 1;
|
||||||
|
for (lastv = 1; lastv <= i__1; ++lastv) {
|
||||||
|
if (v[lastv + i__ * v_dim1] != 0.) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
j = max(lastv,prevlastv);
|
||||||
|
|
||||||
/* T(i+1:k,i) := */
|
/* T(i+1:k,i) := */
|
||||||
/* - tau(i) * V(1:n-k+i,i+1:k)' * V(1:n-k+i,i) */
|
/* - tau(i) * V(j:n-k+i,i+1:k)' * V(j:n-k+i,i) */
|
||||||
|
|
||||||
i__1 = *n - *k + i__;
|
i__1 = *n - *k + i__ - j + 1;
|
||||||
i__2 = *k - i__;
|
i__2 = *k - i__;
|
||||||
d__1 = -tau[i__];
|
d__1 = -tau[i__];
|
||||||
dgemv_("Transpose", &i__1, &i__2, &d__1, &v[(i__ + 1)
|
dgemv_("Transpose", &i__1, &i__2, &d__1, &v[j + (i__
|
||||||
* v_dim1 + 1], ldv, &v[i__ * v_dim1 + 1], &
|
+ 1) * v_dim1], ldv, &v[j + i__ * v_dim1], &
|
||||||
c__1, &c_b8, &t[i__ + 1 + i__ * t_dim1], &
|
c__1, &c_b8, &t[i__ + 1 + i__ * t_dim1], &
|
||||||
c__1);
|
c__1);
|
||||||
v[*n - *k + i__ + i__ * v_dim1] = vii;
|
v[*n - *k + i__ + i__ * v_dim1] = vii;
|
||||||
} else {
|
} else {
|
||||||
vii = v[i__ + (*n - *k + i__) * v_dim1];
|
vii = v[i__ + (*n - *k + i__) * v_dim1];
|
||||||
v[i__ + (*n - *k + i__) * v_dim1] = 1.;
|
v[i__ + (*n - *k + i__) * v_dim1] = 1.;
|
||||||
|
/* Skip any leading zeros. */
|
||||||
|
i__1 = i__ - 1;
|
||||||
|
for (lastv = 1; lastv <= i__1; ++lastv) {
|
||||||
|
if (v[i__ + lastv * v_dim1] != 0.) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
j = max(lastv,prevlastv);
|
||||||
|
|
||||||
/* T(i+1:k,i) := */
|
/* T(i+1:k,i) := */
|
||||||
/* - tau(i) * V(i+1:k,1:n-k+i) * V(i,1:n-k+i)' */
|
/* - tau(i) * V(i+1:k,j:n-k+i) * V(i,j:n-k+i)' */
|
||||||
|
|
||||||
i__1 = *k - i__;
|
i__1 = *k - i__;
|
||||||
i__2 = *n - *k + i__;
|
i__2 = *n - *k + i__ - j + 1;
|
||||||
d__1 = -tau[i__];
|
d__1 = -tau[i__];
|
||||||
dgemv_("No transpose", &i__1, &i__2, &d__1, &v[i__ +
|
dgemv_("No transpose", &i__1, &i__2, &d__1, &v[i__ +
|
||||||
1 + v_dim1], ldv, &v[i__ + v_dim1], ldv, &
|
1 + j * v_dim1], ldv, &v[i__ + j * v_dim1],
|
||||||
c_b8, &t[i__ + 1 + i__ * t_dim1], &c__1);
|
ldv, &c_b8, &t[i__ + 1 + i__ * t_dim1], &c__1);
|
||||||
v[i__ + (*n - *k + i__) * v_dim1] = vii;
|
v[i__ + (*n - *k + i__) * v_dim1] = vii;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -253,6 +307,11 @@ static doublereal c_b8 = 0.;
|
|||||||
+ 1 + (i__ + 1) * t_dim1], ldt, &t[i__ + 1 + i__ *
|
+ 1 + (i__ + 1) * t_dim1], ldt, &t[i__ + 1 + i__ *
|
||||||
t_dim1], &c__1)
|
t_dim1], &c__1)
|
||||||
;
|
;
|
||||||
|
if (i__ > 1) {
|
||||||
|
prevlastv = min(prevlastv,lastv);
|
||||||
|
} else {
|
||||||
|
prevlastv = lastv;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
t[i__ + i__ * t_dim1] = tau[i__];
|
t[i__ + i__ * t_dim1] = tau[i__];
|
||||||
}
|
}
|
||||||
|
15
3rdparty/lapack/dlarnv.c
vendored
15
3rdparty/lapack/dlarnv.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarnv.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarnv_(integer *idist, integer *iseed, integer *n,
|
/* Subroutine */ int dlarnv_(integer *idist, integer *iseed, integer *n,
|
||||||
doublereal *x)
|
doublereal *x)
|
||||||
{
|
{
|
||||||
@ -16,7 +29,7 @@
|
|||||||
extern /* Subroutine */ int dlaruv_(integer *, integer *, doublereal *);
|
extern /* Subroutine */ int dlaruv_(integer *, integer *, doublereal *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarra.c
vendored
15
3rdparty/lapack/dlarra.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarra.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarra_(integer *n, doublereal *d__, doublereal *e,
|
/* Subroutine */ int dlarra_(integer *n, doublereal *d__, doublereal *e,
|
||||||
doublereal *e2, doublereal *spltol, doublereal *tnrm, integer *nsplit,
|
doublereal *e2, doublereal *spltol, doublereal *tnrm, integer *nsplit,
|
||||||
integer *isplit, integer *info)
|
integer *isplit, integer *info)
|
||||||
@ -16,7 +29,7 @@
|
|||||||
doublereal tmp1, eabs;
|
doublereal tmp1, eabs;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarrb.c
vendored
15
3rdparty/lapack/dlarrb.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrb.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarrb_(integer *n, doublereal *d__, doublereal *lld,
|
/* Subroutine */ int dlarrb_(integer *n, doublereal *d__, doublereal *lld,
|
||||||
integer *ifirst, integer *ilast, doublereal *rtol1, doublereal *rtol2,
|
integer *ifirst, integer *ilast, doublereal *rtol1, doublereal *rtol2,
|
||||||
integer *offset, doublereal *w, doublereal *wgap, doublereal *werr,
|
integer *offset, doublereal *w, doublereal *wgap, doublereal *werr,
|
||||||
@ -25,7 +38,7 @@
|
|||||||
integer olnint, maxitr;
|
integer olnint, maxitr;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarrc.c
vendored
15
3rdparty/lapack/dlarrc.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrc.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarrc_(char *jobt, integer *n, doublereal *vl,
|
/* Subroutine */ int dlarrc_(char *jobt, integer *n, doublereal *vl,
|
||||||
doublereal *vu, doublereal *d__, doublereal *e, doublereal *pivmin,
|
doublereal *vu, doublereal *d__, doublereal *e, doublereal *pivmin,
|
||||||
integer *eigcnt, integer *lcnt, integer *rcnt, integer *info)
|
integer *eigcnt, integer *lcnt, integer *rcnt, integer *info)
|
||||||
@ -16,7 +29,7 @@
|
|||||||
doublereal lpivot, rpivot;
|
doublereal lpivot, rpivot;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
35
3rdparty/lapack/dlarrd.c
vendored
35
3rdparty/lapack/dlarrd.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrd.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -48,16 +61,16 @@ static integer c__0 = 0;
|
|||||||
doublereal *, doublereal *, integer *, integer *, doublereal *,
|
doublereal *, doublereal *, integer *, integer *, doublereal *,
|
||||||
integer *, integer *);
|
integer *, integer *);
|
||||||
integer irange, idiscl, idumma[1];
|
integer irange, idiscl, idumma[1];
|
||||||
doublereal spdiam;
|
|
||||||
extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
|
extern integer ilaenv_(integer *, char *, char *, integer *, integer *,
|
||||||
integer *, integer *);
|
integer *, integer *);
|
||||||
integer idiscu;
|
integer idiscu;
|
||||||
logical ncnvrg, toofew;
|
logical ncnvrg, toofew;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2.1) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* -- LAPACK is a software package provided by Univ. of Tennessee, -- */
|
||||||
/* November 2006 */
|
/* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- */
|
||||||
|
/* -- April 2009 -- */
|
||||||
|
|
||||||
/* .. Scalar Arguments .. */
|
/* .. Scalar Arguments .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
@ -368,7 +381,8 @@ static integer c__0 = 0;
|
|||||||
tnorm = max(d__1,d__2);
|
tnorm = max(d__1,d__2);
|
||||||
gl = gl - tnorm * 2. * eps * *n - *pivmin * 4.;
|
gl = gl - tnorm * 2. * eps * *n - *pivmin * 4.;
|
||||||
gu = gu + tnorm * 2. * eps * *n + *pivmin * 4.;
|
gu = gu + tnorm * 2. * eps * *n + *pivmin * 4.;
|
||||||
spdiam = gu - gl;
|
/* [JAN/28/2009] remove the line below since SPDIAM variable not use */
|
||||||
|
/* SPDIAM = GU - GL */
|
||||||
/* Input arguments for DLAEBZ: */
|
/* Input arguments for DLAEBZ: */
|
||||||
/* The relative tolerance. An interval (a,b] lies within */
|
/* The relative tolerance. An interval (a,b] lies within */
|
||||||
/* "relative tolerance" if b-a < RELTOL*max(|a|,|b|), */
|
/* "relative tolerance" if b-a < RELTOL*max(|a|,|b|), */
|
||||||
@ -532,9 +546,14 @@ static integer c__0 = 0;
|
|||||||
gu = max(d__1,d__2);
|
gu = max(d__1,d__2);
|
||||||
/* L40: */
|
/* L40: */
|
||||||
}
|
}
|
||||||
spdiam = gu - gl;
|
/* [JAN/28/2009] */
|
||||||
gl = gl - spdiam * 2. * eps * in - *pivmin * 2.;
|
/* change SPDIAM by TNORM in lines 2 and 3 thereafter */
|
||||||
gu = gu + spdiam * 2. * eps * in + *pivmin * 2.;
|
/* line 1: remove computation of SPDIAM (not useful anymore) */
|
||||||
|
/* SPDIAM = GU - GL */
|
||||||
|
/* GL = GL - FUDGE*SPDIAM*EPS*IN - FUDGE*PIVMIN */
|
||||||
|
/* GU = GU + FUDGE*SPDIAM*EPS*IN + FUDGE*PIVMIN */
|
||||||
|
gl = gl - tnorm * 2. * eps * in - *pivmin * 2.;
|
||||||
|
gu = gu + tnorm * 2. * eps * in + *pivmin * 2.;
|
||||||
|
|
||||||
if (irange > 1) {
|
if (irange > 1) {
|
||||||
if (gu < *wl) {
|
if (gu < *wl) {
|
||||||
|
18
3rdparty/lapack/dlarre.c
vendored
18
3rdparty/lapack/dlarre.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarre.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -76,7 +89,7 @@ static integer c__2 = 2;
|
|||||||
doublereal isrght, bsrtol, dpivot;
|
doublereal isrght, bsrtol, dpivot;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -352,6 +365,9 @@ static integer c__2 = 2;
|
|||||||
/* Can force use of bisection instead of faster DQDS. */
|
/* Can force use of bisection instead of faster DQDS. */
|
||||||
/* Option left in the code for future multisection work. */
|
/* Option left in the code for future multisection work. */
|
||||||
forceb = FALSE_;
|
forceb = FALSE_;
|
||||||
|
/* Initialize USEDQD, DQDS should be used for ALLRNG unless someone */
|
||||||
|
/* explicitly wants bisection. */
|
||||||
|
usedqd = irange == 1 && ! forceb;
|
||||||
if (irange == 1 && ! forceb) {
|
if (irange == 1 && ! forceb) {
|
||||||
/* Set interval [VL,VU] that contains all eigenvalues */
|
/* Set interval [VL,VU] that contains all eigenvalues */
|
||||||
*vl = gl;
|
*vl = gl;
|
||||||
|
15
3rdparty/lapack/dlarrf.c
vendored
15
3rdparty/lapack/dlarrf.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrf.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -39,7 +52,7 @@ static integer c__1 = 1;
|
|||||||
logical sawnan1, sawnan2, tryrrr1;
|
logical sawnan1, sawnan2, tryrrr1;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
/* * */
|
/* * */
|
||||||
|
15
3rdparty/lapack/dlarrj.c
vendored
15
3rdparty/lapack/dlarrj.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrj.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarrj_(integer *n, doublereal *d__, doublereal *e2,
|
/* Subroutine */ int dlarrj_(integer *n, doublereal *d__, doublereal *e2,
|
||||||
integer *ifirst, integer *ilast, doublereal *rtol, integer *offset,
|
integer *ifirst, integer *ilast, doublereal *rtol, integer *offset,
|
||||||
doublereal *w, doublereal *werr, doublereal *work, integer *iwork,
|
doublereal *w, doublereal *werr, doublereal *work, integer *iwork,
|
||||||
@ -24,7 +37,7 @@
|
|||||||
integer olnint, maxitr;
|
integer olnint, maxitr;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarrk.c
vendored
15
3rdparty/lapack/dlarrk.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrk.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarrk_(integer *n, integer *iw, doublereal *gl,
|
/* Subroutine */ int dlarrk_(integer *n, integer *iw, doublereal *gl,
|
||||||
doublereal *gu, doublereal *d__, doublereal *e2, doublereal *pivmin,
|
doublereal *gu, doublereal *d__, doublereal *e2, doublereal *pivmin,
|
||||||
doublereal *reltol, doublereal *w, doublereal *werr, integer *info)
|
doublereal *reltol, doublereal *w, doublereal *werr, integer *info)
|
||||||
@ -20,7 +33,7 @@
|
|||||||
integer negcnt;
|
integer negcnt;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarrr.c
vendored
15
3rdparty/lapack/dlarrr.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrr.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlarrr_(integer *n, doublereal *d__, doublereal *e,
|
/* Subroutine */ int dlarrr_(integer *n, doublereal *d__, doublereal *e,
|
||||||
integer *info)
|
integer *info)
|
||||||
{
|
{
|
||||||
@ -19,7 +32,7 @@
|
|||||||
doublereal smlnum, offdig2;
|
doublereal smlnum, offdig2;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlarrv.c
vendored
15
3rdparty/lapack/dlarrv.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlarrv.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static doublereal c_b5 = 0.;
|
static doublereal c_b5 = 0.;
|
||||||
@ -94,7 +107,7 @@ static integer c__2 = 2;
|
|||||||
integer isupmx;
|
integer isupmx;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
26
3rdparty/lapack/dlartg.c
vendored
26
3rdparty/lapack/dlartg.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlartg.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlartg_(doublereal *f, doublereal *g, doublereal *cs,
|
/* Subroutine */ int dlartg_(doublereal *f, doublereal *g, doublereal *cs,
|
||||||
doublereal *sn, doublereal *r__)
|
doublereal *sn, doublereal *r__)
|
||||||
{
|
{
|
||||||
@ -12,14 +25,14 @@
|
|||||||
|
|
||||||
/* Local variables */
|
/* Local variables */
|
||||||
integer i__;
|
integer i__;
|
||||||
doublereal f1, g1, scale;
|
doublereal f1, g1, eps, scale;
|
||||||
integer count;
|
integer count;
|
||||||
static doublereal safmn2, safmx2;
|
doublereal safmn2, safmx2;
|
||||||
extern doublereal dlamch_(char *);
|
extern doublereal dlamch_(char *);
|
||||||
static doublereal safmin, eps;
|
doublereal safmin;
|
||||||
static volatile logical first = TRUE_;
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
|
||||||
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -85,15 +98,12 @@
|
|||||||
/* .. Executable Statements .. */
|
/* .. Executable Statements .. */
|
||||||
|
|
||||||
/* IF( FIRST ) THEN */
|
/* IF( FIRST ) THEN */
|
||||||
if (first) {
|
|
||||||
safmin = dlamch_("S");
|
safmin = dlamch_("S");
|
||||||
eps = dlamch_("E");
|
eps = dlamch_("E");
|
||||||
d__1 = dlamch_("B");
|
d__1 = dlamch_("B");
|
||||||
i__1 = (integer) (log(safmin / eps) / log(dlamch_("B")) / 2.);
|
i__1 = (integer) (log(safmin / eps) / log(dlamch_("B")) / 2.);
|
||||||
safmn2 = pow_di(&d__1, &i__1);
|
safmn2 = pow_di(&d__1, &i__1);
|
||||||
safmx2 = 1. / safmn2;
|
safmx2 = 1. / safmn2;
|
||||||
first = FALSE_;
|
|
||||||
}
|
|
||||||
/* FIRST = .FALSE. */
|
/* FIRST = .FALSE. */
|
||||||
/* END IF */
|
/* END IF */
|
||||||
if (*g == 0.) {
|
if (*g == 0.) {
|
||||||
|
15
3rdparty/lapack/dlaruv.c
vendored
15
3rdparty/lapack/dlaruv.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaruv.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaruv_(integer *iseed, integer *n, doublereal *x)
|
/* Subroutine */ int dlaruv_(integer *iseed, integer *n, doublereal *x)
|
||||||
{
|
{
|
||||||
/* Initialized data */
|
/* Initialized data */
|
||||||
@ -51,7 +64,7 @@
|
|||||||
integer i__, i1, i2, i3, i4, it1, it2, it3, it4;
|
integer i__, i1, i2, i3, i4, it1, it2, it3, it4;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlas2.c
vendored
15
3rdparty/lapack/dlas2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlas2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlas2_(doublereal *f, doublereal *g, doublereal *h__,
|
/* Subroutine */ int dlas2_(doublereal *f, doublereal *g, doublereal *h__,
|
||||||
doublereal *ssmin, doublereal *ssmax)
|
doublereal *ssmin, doublereal *ssmax)
|
||||||
{
|
{
|
||||||
@ -13,7 +26,7 @@
|
|||||||
doublereal c__, fa, ga, ha, as, at, au, fhmn, fhmx;
|
doublereal c__, fa, ga, ha, as, at, au, fhmn, fhmx;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
36
3rdparty/lapack/dlascl.c
vendored
36
3rdparty/lapack/dlascl.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlascl.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlascl_(char *type__, integer *kl, integer *ku,
|
/* Subroutine */ int dlascl_(char *type__, integer *kl, integer *ku,
|
||||||
doublereal *cfrom, doublereal *cto, integer *m, integer *n,
|
doublereal *cfrom, doublereal *cto, integer *m, integer *n,
|
||||||
doublereal *a, integer *lda, integer *info)
|
doublereal *a, integer *lda, integer *info)
|
||||||
@ -17,11 +30,12 @@
|
|||||||
doublereal cfrom1;
|
doublereal cfrom1;
|
||||||
extern doublereal dlamch_(char *);
|
extern doublereal dlamch_(char *);
|
||||||
doublereal cfromc;
|
doublereal cfromc;
|
||||||
|
extern logical disnan_(doublereal *);
|
||||||
extern /* Subroutine */ int xerbla_(char *, integer *);
|
extern /* Subroutine */ int xerbla_(char *, integer *);
|
||||||
doublereal bignum, smlnum;
|
doublereal bignum, smlnum;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
@ -133,8 +147,10 @@
|
|||||||
|
|
||||||
if (itype == -1) {
|
if (itype == -1) {
|
||||||
*info = -1;
|
*info = -1;
|
||||||
} else if (*cfrom == 0.) {
|
} else if (*cfrom == 0. || disnan_(cfrom)) {
|
||||||
*info = -4;
|
*info = -4;
|
||||||
|
} else if (disnan_(cto)) {
|
||||||
|
*info = -5;
|
||||||
} else if (*m < 0) {
|
} else if (*m < 0) {
|
||||||
*info = -6;
|
*info = -6;
|
||||||
} else if (*n < 0 || itype == 4 && *n != *m || itype == 5 && *n != *m) {
|
} else if (*n < 0 || itype == 4 && *n != *m || itype == 5 && *n != *m) {
|
||||||
@ -181,8 +197,21 @@
|
|||||||
|
|
||||||
L10:
|
L10:
|
||||||
cfrom1 = cfromc * smlnum;
|
cfrom1 = cfromc * smlnum;
|
||||||
|
if (cfrom1 == cfromc) {
|
||||||
|
/* CFROMC is an inf. Multiply by a correctly signed zero for */
|
||||||
|
/* finite CTOC, or a NaN if CTOC is infinite. */
|
||||||
|
mul = ctoc / cfromc;
|
||||||
|
done = TRUE_;
|
||||||
|
cto1 = ctoc;
|
||||||
|
} else {
|
||||||
cto1 = ctoc / bignum;
|
cto1 = ctoc / bignum;
|
||||||
if (abs(cfrom1) > abs(ctoc) && ctoc != 0.) {
|
if (cto1 == ctoc) {
|
||||||
|
/* CTOC is either 0 or an inf. In both cases, CTOC itself */
|
||||||
|
/* serves as the correct multiplication factor. */
|
||||||
|
mul = ctoc;
|
||||||
|
done = TRUE_;
|
||||||
|
cfromc = 1.;
|
||||||
|
} else if (abs(cfrom1) > abs(ctoc) && ctoc != 0.) {
|
||||||
mul = smlnum;
|
mul = smlnum;
|
||||||
done = FALSE_;
|
done = FALSE_;
|
||||||
cfromc = cfrom1;
|
cfromc = cfrom1;
|
||||||
@ -194,6 +223,7 @@ L10:
|
|||||||
mul = ctoc / cfromc;
|
mul = ctoc / cfromc;
|
||||||
done = TRUE_;
|
done = TRUE_;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (itype == 0) {
|
if (itype == 0) {
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd0.c
vendored
15
3rdparty/lapack/dlasd0.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd0.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__0 = 0;
|
static integer c__0 = 0;
|
||||||
@ -34,7 +47,7 @@ static integer c__2 = 2;
|
|||||||
char *, integer *);
|
char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd1.c
vendored
15
3rdparty/lapack/dlasd1.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd1.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__0 = 0;
|
static integer c__0 = 0;
|
||||||
@ -38,7 +51,7 @@ static integer c_n1 = -1;
|
|||||||
integer coltyp;
|
integer coltyp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd2.c
vendored
15
3rdparty/lapack/dlasd2.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd2.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -41,7 +54,7 @@ static doublereal c_b30 = 0.;
|
|||||||
doublereal hlftol;
|
doublereal hlftol;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd3.c
vendored
15
3rdparty/lapack/dlasd3.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd3.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -44,7 +57,7 @@ static doublereal c_b26 = 0.;
|
|||||||
xerbla_(char *, integer *);
|
xerbla_(char *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd4.c
vendored
15
3rdparty/lapack/dlasd4.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd4.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlasd4_(integer *n, integer *i__, doublereal *d__,
|
/* Subroutine */ int dlasd4_(integer *n, integer *i__, doublereal *d__,
|
||||||
doublereal *z__, doublereal *delta, doublereal *rho, doublereal *
|
doublereal *z__, doublereal *delta, doublereal *rho, doublereal *
|
||||||
sigma, doublereal *work, integer *info)
|
sigma, doublereal *work, integer *info)
|
||||||
@ -38,7 +51,7 @@
|
|||||||
doublereal erretm, dtipsq, rhoinv;
|
doublereal erretm, dtipsq, rhoinv;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd5.c
vendored
15
3rdparty/lapack/dlasd5.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd5.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlasd5_(integer *i__, doublereal *d__, doublereal *z__,
|
/* Subroutine */ int dlasd5_(integer *i__, doublereal *d__, doublereal *z__,
|
||||||
doublereal *delta, doublereal *rho, doublereal *dsigma, doublereal *
|
doublereal *delta, doublereal *rho, doublereal *dsigma, doublereal *
|
||||||
work)
|
work)
|
||||||
@ -14,7 +27,7 @@
|
|||||||
doublereal b, c__, w, del, tau, delsq;
|
doublereal b, c__, w, del, tau, delsq;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd6.c
vendored
15
3rdparty/lapack/dlasd6.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd6.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__0 = 0;
|
static integer c__0 = 0;
|
||||||
@ -40,7 +53,7 @@ static integer c_n1 = -1;
|
|||||||
doublereal orgnrm;
|
doublereal orgnrm;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasd7.c
vendored
15
3rdparty/lapack/dlasd7.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd7.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -34,7 +47,7 @@ static integer c__1 = 1;
|
|||||||
doublereal hlftol;
|
doublereal hlftol;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
34
3rdparty/lapack/dlasd8.c
vendored
34
3rdparty/lapack/dlasd8.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasd8.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -41,9 +54,9 @@ static doublereal c_b8 = 1.;
|
|||||||
doublereal dsigjp;
|
doublereal dsigjp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* October 2006 */
|
||||||
|
|
||||||
/* .. Scalar Arguments .. */
|
/* .. Scalar Arguments .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
@ -78,9 +91,10 @@ static doublereal c_b8 = 1.;
|
|||||||
/* D (output) DOUBLE PRECISION array, dimension ( K ) */
|
/* D (output) DOUBLE PRECISION array, dimension ( K ) */
|
||||||
/* On output, D contains the updated singular values. */
|
/* On output, D contains the updated singular values. */
|
||||||
|
|
||||||
/* Z (input) DOUBLE PRECISION array, dimension ( K ) */
|
/* Z (input/output) DOUBLE PRECISION array, dimension ( K ) */
|
||||||
/* The first K elements of this array contain the components */
|
/* On entry, the first K elements of this array contain the */
|
||||||
/* of the deflation-adjusted updating row vector. */
|
/* components of the deflation-adjusted updating row vector. */
|
||||||
|
/* On exit, Z is updated. */
|
||||||
|
|
||||||
/* VF (input/output) DOUBLE PRECISION array, dimension ( K ) */
|
/* VF (input/output) DOUBLE PRECISION array, dimension ( K ) */
|
||||||
/* On entry, VF contains information passed through DBEDE8. */
|
/* On entry, VF contains information passed through DBEDE8. */
|
||||||
@ -109,10 +123,12 @@ static doublereal c_b8 = 1.;
|
|||||||
/* LDDIFR (input) INTEGER */
|
/* LDDIFR (input) INTEGER */
|
||||||
/* The leading dimension of DIFR, must be at least K. */
|
/* The leading dimension of DIFR, must be at least K. */
|
||||||
|
|
||||||
/* DSIGMA (input) DOUBLE PRECISION array, dimension ( K ) */
|
/* DSIGMA (input/output) DOUBLE PRECISION array, dimension ( K ) */
|
||||||
/* The first K elements of this array contain the old roots */
|
/* On entry, the first K elements of this array contain the old */
|
||||||
/* of the deflated updating problem. These are the poles */
|
/* roots of the deflated updating problem. These are the poles */
|
||||||
/* of the secular equation. */
|
/* of the secular equation. */
|
||||||
|
/* On exit, the elements of DSIGMA may be very slightly altered */
|
||||||
|
/* in value. */
|
||||||
|
|
||||||
/* WORK (workspace) DOUBLE PRECISION array, dimension at least 3 * K */
|
/* WORK (workspace) DOUBLE PRECISION array, dimension at least 3 * K */
|
||||||
|
|
||||||
@ -198,7 +214,7 @@ static doublereal c_b8 = 1.;
|
|||||||
/* changes the bottommost bits of DSIGMA(I). It does not account */
|
/* changes the bottommost bits of DSIGMA(I). It does not account */
|
||||||
/* for hexadecimal or decimal machines without guard digits */
|
/* for hexadecimal or decimal machines without guard digits */
|
||||||
/* (we know of none). We use a subroutine call to compute */
|
/* (we know of none). We use a subroutine call to compute */
|
||||||
/* 2*DSIGMA(I) to prevent optimizing compilers from eliminating */
|
/* 2*DLAMBDA(I) to prevent optimizing compilers from eliminating */
|
||||||
/* this code. */
|
/* this code. */
|
||||||
|
|
||||||
i__1 = *k;
|
i__1 = *k;
|
||||||
|
15
3rdparty/lapack/dlasda.c
vendored
15
3rdparty/lapack/dlasda.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasda.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__0 = 0;
|
static integer c__0 = 0;
|
||||||
@ -51,7 +64,7 @@ static integer c__2 = 2;
|
|||||||
integer smlszp;
|
integer smlszp;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasdq.c
vendored
15
3rdparty/lapack/dlasdq.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasdq.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -33,7 +46,7 @@ static integer c__1 = 1;
|
|||||||
logical rotate;
|
logical rotate;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlasdt.c
vendored
15
3rdparty/lapack/dlasdt.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasdt.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlasdt_(integer *n, integer *lvl, integer *nd, integer *
|
/* Subroutine */ int dlasdt_(integer *n, integer *lvl, integer *nd, integer *
|
||||||
inode, integer *ndiml, integer *ndimr, integer *msub)
|
inode, integer *ndiml, integer *ndimr, integer *msub)
|
||||||
{
|
{
|
||||||
@ -15,7 +28,7 @@
|
|||||||
integer nlvl, llst, ncrnt;
|
integer nlvl, llst, ncrnt;
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
15
3rdparty/lapack/dlaset.c
vendored
15
3rdparty/lapack/dlaset.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlaset.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Subroutine */ int dlaset_(char *uplo, integer *m, integer *n, doublereal *
|
/* Subroutine */ int dlaset_(char *uplo, integer *m, integer *n, doublereal *
|
||||||
alpha, doublereal *beta, doublereal *a, integer *lda)
|
alpha, doublereal *beta, doublereal *a, integer *lda)
|
||||||
{
|
{
|
||||||
@ -11,7 +24,7 @@
|
|||||||
extern logical lsame_(char *, char *);
|
extern logical lsame_(char *, char *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK auxiliary routine (version 3.1) -- */
|
/* -- LAPACK auxiliary routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
||||||
/* November 2006 */
|
/* November 2006 */
|
||||||
|
|
||||||
|
25
3rdparty/lapack/dlasq1.c
vendored
25
3rdparty/lapack/dlasq1.c
vendored
@ -1,5 +1,18 @@
|
|||||||
|
/* dlasq1.f -- translated by f2c (version 20061008).
|
||||||
|
You must link the resulting object file with libf2c:
|
||||||
|
on Microsoft Windows system, link with libf2c.lib;
|
||||||
|
on Linux or Unix systems, link with .../path/to/libf2c.a -lm
|
||||||
|
or, if you install libf2c.a in a standard place, with -lf2c -lm
|
||||||
|
-- in that order, at the end of the command line, as in
|
||||||
|
cc *.o -lf2c -lm
|
||||||
|
Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
|
||||||
|
|
||||||
|
http://www.netlib.org/f2c/libf2c.zip
|
||||||
|
*/
|
||||||
|
|
||||||
#include "clapack.h"
|
#include "clapack.h"
|
||||||
|
|
||||||
|
|
||||||
/* Table of constant values */
|
/* Table of constant values */
|
||||||
|
|
||||||
static integer c__1 = 1;
|
static integer c__1 = 1;
|
||||||
@ -37,9 +50,15 @@ static integer c__0 = 0;
|
|||||||
char *, integer *, doublereal *, integer *);
|
char *, integer *, doublereal *, integer *);
|
||||||
|
|
||||||
|
|
||||||
/* -- LAPACK routine (version 3.1) -- */
|
/* -- LAPACK routine (version 3.2) -- */
|
||||||
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
|
|
||||||
/* November 2006 */
|
/* -- Contributed by Osni Marques of the Lawrence Berkeley National -- */
|
||||||
|
/* -- Laboratory and Beresford Parlett of the Univ. of California at -- */
|
||||||
|
/* -- Berkeley -- */
|
||||||
|
/* -- November 2008 -- */
|
||||||
|
|
||||||
|
/* -- LAPACK is a software package provided by Univ. of Tennessee, -- */
|
||||||
|
/* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- */
|
||||||
|
|
||||||
/* .. Scalar Arguments .. */
|
/* .. Scalar Arguments .. */
|
||||||
/* .. */
|
/* .. */
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user