add __init__.py (#503)
add __init__.py (#503)

* break up code

* fix return value of unique

* add tests for raises

* remove a raise-test because pytype complains

* comments

* add index.py

* add index_test.py

* fix bug in __eq__

* add tests

* linting

* added files

* start adding stuff to block_tensor.py

* adding functions and tests

* linting

* fix typing issue

* fix typing

* fix typing

* add reduce_charges

* adding tests

* add typing

* typo

* typo

* typing

* fix syntax error

* fix typing

* add tests for reduce_charges

* docstring

* typing

* typing

* add _find_diagonal_sparse_blocks

* add test

* test updated

* linting

* add TODO and FIXME

* added _find_transposed_diagonal_sparse_blocks

* added find_transposed_diagonal_sparse_blocks

* fix tests, add more testing

* fix tests

* add check

BaseCharge.__init__ checks if len(charge_types) is consistent with charges

* linting

* shorten code

* fix bug

* adding tests for _find_transposed_diagonal_sparse_blocks

* added test for _find_transposed_diagonal_sparse_blocks

* remove commented code

* remove commented code

* linting

* nothing

* remove ChargeArray

* add ChargeArray

* tests updated

* more comprehensive testing

* linting

* add some more routines + reshape to ChargeArray

* removed some initializers again (not needed)

* added tests

* linting

* typing

* removed some nasty nesting

* small fixes

* typo

* remove transpose

* added tests

for transpose, transpose_data and combinations thereof with reshape

* added transpose and transpose_data routines

* remove BlockSparseTensor from docstrings

* added tests

* started adding BlockSparseTensor

* finish BlockSparseTensor (almost)

* add tests

* typing

* fix random to include upper boundary value

* add more routines for ChargeArray and BlockSparseTensor

norm, diag, conj, reshape, transpose, outerproduct

* add tests

* typing, linting

* added tensordot

* fix bug that appears for empty tensors

* fixed tests

* fix return value

* added more tests

* fix test

* linting

* typo

* remove line

* add docstring

* add svd

* fix bug in svd and diag

bug appeared when tensors where empty

* fixed empyt-array bug in qrr

* added tests

* fix bug for empty arrays

* sone typing stuff

* tests

* uncomment tests

* added eig, sqrt, trace

* add routines, fix some typing issues

* formatting of exception

* linting

* added pinv, ones, rannd, randn, zeros

* fix typing issues

* add pinv

remove conj and T from subclassed BlockSparseTensor again

* added conj and transpose back

typing with __new__ is a pain ...

* some more tests

* fix transpose arguments

add docstring to conj

* more complete docstring for diag

* typo

* space

* docstring

* fix return type in docstring

* improve docstring of outerproduct

* set numpy seed

* disable annoying linting error

* dito

* ditto

* add dtpye fixture to test_tensordot_reshape

* fake line

* remove fake line

* numpy>=1.17

* test tensordot raises

* more tests

* change size dtypes to np.unit64

* changed size dtypes to np.int64

* add size_t to change index-array size types

* capitalize size_t

* newline

* typo-bug

* add unit tests

* added tests

* fix dtype issue (again)

* remove comment

* fix edge case of empty input in BaseCharge.__init__

* raise if input to __eq__ is empty

* fix edge case of empty charges in __add__

* fix edge case of empty charges in `isin`

* fix bug in cahrge_test.py

* fix pytest warning

* fix warning

* more comprehensive testing

* test svd for empty tensors

* more comprehensive testing

* more comprehensive testing

* more comprehensive testing of edge cases

* edge case tests for eig

* shorten code

* edge case fixed

* fix bug _find_transposed_diagonal_sparse_blocks

* fix edge case in diag

* testing edge cases of `diag`

* raise error when reshaping empty tensors

* fix tests

* fix reshape

* linting

* better testing

* linting

* more comprehensive testing

* remove redundant test

* more comprehensive testing

* linting

* remove lines

* shorten import code

* change import

* fix bug in tensordot for inner product mode

add outerproduct mode to tensordot

* fix tests

* more comprehensive testing

* return np.ndarray for tensordot in inner mode

* fix import

* fix import

* fix import

* fix bug

* fix warning

* more checks for input to tensordot

* conform to numpy convention when using tensordot for inner product on empty tensors

* fix tests

* remove print

* fix outerproduct in tensordot

* raise ValueError in pinv

* add raise-tests

* fix typo

* comment

* added two more checks to tensordot

* more tests

* fix return type of tensordot

* restructuring files

* added files

* remove unused type

* remove unused types

* remove unused types

* remove unused types

* import outerproduct

* remove unused imports
google/TensorNetwork