+++ /dev/null
-// Code generated by "go generate gonum.org/v1/gonum/blas”; DO NOT EDIT.
-
-// Copyright ©2015 The Gonum Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package cblas128
-
-import "gonum.org/v1/gonum/blas"
-
-// HermitianCols represents a matrix using the conventional column-major storage scheme.
-type HermitianCols Hermitian
-
-// From fills the receiver with elements from a. The receiver
-// must have the same dimensions and uplo as a and have adequate
-// backing data storage.
-func (t HermitianCols) From(a Hermitian) {
- if t.N != a.N {
- panic("cblas128: mismatched dimension")
- }
- if t.Uplo != a.Uplo {
- panic("cblas128: mismatched BLAS uplo")
- }
- switch a.Uplo {
- default:
- panic("cblas128: bad BLAS uplo")
- case blas.Upper:
- for i := 0; i < a.N; i++ {
- for j := i; j < a.N; j++ {
- t.Data[i+j*t.Stride] = a.Data[i*a.Stride+j]
- }
- }
- case blas.Lower:
- for i := 0; i < a.N; i++ {
- for j := 0; j <= i; j++ {
- t.Data[i+j*t.Stride] = a.Data[i*a.Stride+j]
- }
- }
- }
-}
-
-// From fills the receiver with elements from a. The receiver
-// must have the same dimensions and uplo as a and have adequate
-// backing data storage.
-func (t Hermitian) From(a HermitianCols) {
- if t.N != a.N {
- panic("cblas128: mismatched dimension")
- }
- if t.Uplo != a.Uplo {
- panic("cblas128: mismatched BLAS uplo")
- }
- switch a.Uplo {
- default:
- panic("cblas128: bad BLAS uplo")
- case blas.Upper:
- for i := 0; i < a.N; i++ {
- for j := i; j < a.N; j++ {
- t.Data[i*t.Stride+j] = a.Data[i+j*a.Stride]
- }
- }
- case blas.Lower:
- for i := 0; i < a.N; i++ {
- for j := 0; j <= i; j++ {
- t.Data[i*t.Stride+j] = a.Data[i+j*a.Stride]
- }
- }
- }
-}
-
-// HermitianBandCols represents an Hermitian matrix using the band column-major storage scheme.
-type HermitianBandCols HermitianBand
-
-// From fills the receiver with elements from a. The receiver
-// must have the same dimensions, bandwidth and uplo as a and
-// have adequate backing data storage.
-func (t HermitianBandCols) From(a HermitianBand) {
- if t.N != a.N {
- panic("cblas128: mismatched dimension")
- }
- if t.K != a.K {
- panic("cblas128: mismatched bandwidth")
- }
- if a.Stride < a.K+1 {
- panic("cblas128: short stride for source")
- }
- if t.Stride < t.K+1 {
- panic("cblas128: short stride for destination")
- }
- if t.Uplo != a.Uplo {
- panic("cblas128: mismatched BLAS uplo")
- }
- dst := BandCols{
- Rows: t.N, Cols: t.N,
- Stride: t.Stride,
- Data: t.Data,
- }
- src := Band{
- Rows: a.N, Cols: a.N,
- Stride: a.Stride,
- Data: a.Data,
- }
- switch a.Uplo {
- default:
- panic("cblas128: bad BLAS uplo")
- case blas.Upper:
- dst.KU = t.K
- src.KU = a.K
- case blas.Lower:
- dst.KL = t.K
- src.KL = a.K
- }
- dst.From(src)
-}
-
-// From fills the receiver with elements from a. The receiver
-// must have the same dimensions, bandwidth and uplo as a and
-// have adequate backing data storage.
-func (t HermitianBand) From(a HermitianBandCols) {
- if t.N != a.N {
- panic("cblas128: mismatched dimension")
- }
- if t.K != a.K {
- panic("cblas128: mismatched bandwidth")
- }
- if a.Stride < a.K+1 {
- panic("cblas128: short stride for source")
- }
- if t.Stride < t.K+1 {
- panic("cblas128: short stride for destination")
- }
- if t.Uplo != a.Uplo {
- panic("cblas128: mismatched BLAS uplo")
- }
- dst := Band{
- Rows: t.N, Cols: t.N,
- Stride: t.Stride,
- Data: t.Data,
- }
- src := BandCols{
- Rows: a.N, Cols: a.N,
- Stride: a.Stride,
- Data: a.Data,
- }
- switch a.Uplo {
- default:
- panic("cblas128: bad BLAS uplo")
- case blas.Upper:
- dst.KU = t.K
- src.KU = a.K
- case blas.Lower:
- dst.KL = t.K
- src.KL = a.K
- }
- dst.From(src)
-}