{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# How to use SVSA to learn and predict lineshapes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we import the package as well as numpy" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import svsa\n", "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to train the SVSA model we need to have some training data. We'll use the built-in Tenti S6 model to generate RB scattering lineshapes." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "train_lineshapes, train_params, xs = svsa.gen_spectra(y_seq=np.linspace(0,2,num=5),\n", " ri_seq=np.linspace(1.5,3,num=2),\n", " ef_seq=np.linspace(1.8,2,num=5),\n", " ci_seq=np.array([1]),\n", " ct_seq=np.array([1.5]),\n", " x_seq=np.linspace(-3,3,num=100))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "this generates an array of training lineshapes for the given (50) parameters over the (100) values of x" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(50, 5)\n" ] }, { "data": { "text/html": [ "
\n", " | y | \n", "rlx_int | \n", "eukenf | \n", "c_int | \n", "c_tr | \n", "
---|---|---|---|---|---|
0 | \n", "0.0 | \n", "1.5 | \n", "1.80 | \n", "1.0 | \n", "1.5 | \n", "
1 | \n", "0.0 | \n", "1.5 | \n", "1.85 | \n", "1.0 | \n", "1.5 | \n", "
2 | \n", "0.0 | \n", "1.5 | \n", "1.90 | \n", "1.0 | \n", "1.5 | \n", "
3 | \n", "0.0 | \n", "1.5 | \n", "1.95 | \n", "1.0 | \n", "1.5 | \n", "
4 | \n", "0.0 | \n", "1.5 | \n", "2.00 | \n", "1.0 | \n", "1.5 | \n", "
\n", " | 0 | \n", "1 | \n", "2 | \n", "3 | \n", "4 | \n", "5 | \n", "6 | \n", "7 | \n", "8 | \n", "9 | \n", "... | \n", "90 | \n", "91 | \n", "92 | \n", "93 | \n", "94 | \n", "95 | \n", "96 | \n", "97 | \n", "98 | \n", "99 | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "0.000437 | \n", "0.000627 | \n", "0.000892 | \n", "0.00126 | \n", "0.001767 | \n", "0.002459 | \n", "0.003397 | \n", "0.004659 | \n", "0.006343 | \n", "0.008572 | \n", "... | \n", "0.008572 | \n", "0.006343 | \n", "0.004659 | \n", "0.003397 | \n", "0.002459 | \n", "0.001767 | \n", "0.00126 | \n", "0.000892 | \n", "0.000627 | \n", "0.000437 | \n", "
1 | \n", "0.000437 | \n", "0.000627 | \n", "0.000892 | \n", "0.00126 | \n", "0.001767 | \n", "0.002459 | \n", "0.003397 | \n", "0.004659 | \n", "0.006343 | \n", "0.008572 | \n", "... | \n", "0.008572 | \n", "0.006343 | \n", "0.004659 | \n", "0.003397 | \n", "0.002459 | \n", "0.001767 | \n", "0.00126 | \n", "0.000892 | \n", "0.000627 | \n", "0.000437 | \n", "
2 | \n", "0.000437 | \n", "0.000627 | \n", "0.000892 | \n", "0.00126 | \n", "0.001767 | \n", "0.002459 | \n", "0.003397 | \n", "0.004659 | \n", "0.006343 | \n", "0.008572 | \n", "... | \n", "0.008572 | \n", "0.006343 | \n", "0.004659 | \n", "0.003397 | \n", "0.002459 | \n", "0.001767 | \n", "0.00126 | \n", "0.000892 | \n", "0.000627 | \n", "0.000437 | \n", "
3 | \n", "0.000437 | \n", "0.000627 | \n", "0.000892 | \n", "0.00126 | \n", "0.001767 | \n", "0.002459 | \n", "0.003397 | \n", "0.004659 | \n", "0.006343 | \n", "0.008572 | \n", "... | \n", "0.008572 | \n", "0.006343 | \n", "0.004659 | \n", "0.003397 | \n", "0.002459 | \n", "0.001767 | \n", "0.00126 | \n", "0.000892 | \n", "0.000627 | \n", "0.000437 | \n", "
4 | \n", "0.000437 | \n", "0.000627 | \n", "0.000892 | \n", "0.00126 | \n", "0.001767 | \n", "0.002459 | \n", "0.003397 | \n", "0.004659 | \n", "0.006343 | \n", "0.008572 | \n", "... | \n", "0.008572 | \n", "0.006343 | \n", "0.004659 | \n", "0.003397 | \n", "0.002459 | \n", "0.001767 | \n", "0.00126 | \n", "0.000892 | \n", "0.000627 | \n", "0.000437 | \n", "
5 rows × 100 columns
\n", "