This repo contains code for our paper
O. A. Malik, Y. Xu, N. Cheng, S. Becker, A. Doostan, A. Narayan. Fast Algorithms for Monotone Lower Subsets of Kronecker Least Squares Problems. arXiv preprint arXiv:2209.05662, 2022.
The paper is available at arXiv.
If you use this code in any of your own work, please reference our paper:
@misc{malik2022fast,
title={Fast Algorithms for Monotone Lower Subsets of Kronecker Least Squares Problems},
author={Osman Asif Malik and Yiming Xu and Nuojin Cheng and Stephen Becker and Alireza Doostan and Akil Narayan},
year={2022},
eprint={2209.05662},
archivePrefix={arXiv},
primaryClass={math.NA}
}
-
duffing_TD.m/duffing_HC.m: Codes generating Duffing oscilator data and solving the total degree/hyperbolic cross least squares problem using uniform sample, TP sampling, and leverage sampling;
-
ishigami_TD.m/ishigami_HC.m: Codes generating Ishigami function data and solving the total degree/hyperbolic cross least squares problem using uniform sample, TP sampling, and leverage sampling.
-
battery_test_TD.m/battery_test_HC.m: Codes solving the total degree/hyperbolic cross least squares battery problem using uniform sample, TP sampling, and leverage sampling.
- hyperbolic_cross_sampling.m: A function sampling and solving the least square problem of hyperbolic cross space with many different sampling options. The function utilizes the tensor structure and solves sampled least square problems with less time. The sampling methods provided are uniform sampling and leverage score sampling.
- total_degree_sampling.m: Same with above, but in the total degree space.
- duffing/ishigami/battery_plot.m: Plot function for CDF of generated data;
- duffing_dydt: Duffing function for ode solver;
- my_legendre_1d.m: A function generating 1d Gauss-Legendre node between -1 and 1.
- battery_data: A folder containing data of battery example.
- Run matlab file duffing_TD.m with following parameters:
J = 7
J = 9
- Run matlab file duffing_HC.m with following parameters:
J = 15
J = 18
- Run matlab file duffing_plot.m and generate the figure. Since the result is random, figures generated won't be the same.