# Generated by Django 2.2.7 on 2019-11-22 23:12

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Hamiltonian',
            fields=[
                ('id', models.AutoField(help_text='Primary key for Base class.', primary_key=True, serialize=False)),
                ('last_modified', models.DateTimeField(auto_now=True, help_text='Date the class was last modified')),
                ('tag', models.CharField(blank=True, help_text='User defined tag for easy searches', max_length=200, null=True)),
                ('user', models.ForeignKey(blank=True, help_text='User who updated this object. Set on save by connection to database. Ananymous if not found.', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'abstract': False,
            },
        ),
        migrations.CreateModel(
            name='Eigenvalue',
            fields=[
                ('id', models.AutoField(help_text='Primary key for Base class.', primary_key=True, serialize=False)),
                ('last_modified', models.DateTimeField(auto_now=True, help_text='Date the class was last modified')),
                ('tag', models.CharField(blank=True, help_text='User defined tag for easy searches', max_length=200, null=True)),
                ('n_level', models.PositiveIntegerField(help_text='The nth eigenvalue extracted in ascending order.')),
                ('value', models.FloatField(help_text='The value of the eigenvalue')),
                ('hamiltonian', models.ForeignKey(help_text='Matrix for which the eigenvalue has been computed.', on_delete=django.db.models.deletion.CASCADE, to='hamiltonian.Hamiltonian')),
                ('user', models.ForeignKey(blank=True, help_text='User who updated this object. Set on save by connection to database. Ananymous if not found.', null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
            ],
            options={
                'unique_together': {('hamiltonian', 'n_level')},
            },
        ),
        migrations.CreateModel(
            name='Coulomb',
            fields=[
                ('hamiltonian_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='hamiltonian.Hamiltonian')),
                ('n_sites', models.IntegerField(help_text='Number of sites in one spatial dimension', verbose_name='Number of sites')),
                ('spacing', models.DecimalField(decimal_places=3, help_text='The lattice spacing between sites', max_digits=5, verbose_name='lattice spacing')),
                ('v', models.DecimalField(decimal_places=3, help_text='Interaction parameter of th the Hamiltonian. Implements an `1 / r` interaction.', max_digits=5, verbose_name='Interaction')),
            ],
            options={
                'unique_together': {('n_sites', 'spacing', 'v')},
            },
            bases=('hamiltonian.hamiltonian',),
        ),
        migrations.CreateModel(
            name='Contact',
            fields=[
                ('hamiltonian_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='hamiltonian.Hamiltonian')),
                ('n_sites', models.IntegerField(help_text='Number of sites in one spatial dimension', verbose_name='Number of sites')),
                ('spacing', models.DecimalField(decimal_places=3, help_text='The lattice spacing between sites', max_digits=5, verbose_name='lattice spacing')),
                ('c', models.DecimalField(decimal_places=3, help_text='Interaction parameter of th the Hamiltonian. Implements a contact interaction.', max_digits=5, verbose_name='Interaction')),
            ],
            options={
                'unique_together': {('n_sites', 'spacing', 'c')},
            },
            bases=('hamiltonian.hamiltonian',),
        ),
    ]
