# -*- coding: utf-8 -*-
# -------------------------------------------------------------
# Molecule Configuration
# -------------------------------------------------------------

# Define elements
elements = [Argon, Silicon]

# Define coordinates
cartesian_coordinates = [[ 0.639999954088,  0.            ,  0.            ],
                         [ 0.            ,  0.            ,  2.            ]]*Angstrom

# Set up configuration
molecule_configuration = MoleculeConfiguration(
    elements=elements,
    cartesian_coordinates=cartesian_coordinates
    )

# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------

potentialSet = TremoloXPotentialSet(name = 'Moliere_ArSi')
potentialSet.addParticleType(ParticleType.fromElement(Silicon))
potentialSet.addParticleType(ParticleType.fromElement(Argon))

_potential = MolierePotential(
	particleType1=ParticleIdentifier('Si', []),
	particleType2=ParticleIdentifier('Ar', []),
	f=0.09734*Angstrom,
	c1=0.35,
	c2=0.55,
	c3=0.1,
	c4=0.0,
	d1=0.3,
	d2=1.2,
	d3=6.0,
	d4=0.0,
	Zi=14.0*elementary_charge,
	Zj=18.0*elementary_charge,
	s=0.0*eV,
	r_i=5.0*Angstrom,
	r_cut=7.5*Angstrom,
)
potentialSet.addPotential(_potential)
calculator = TremoloXCalculator(parameters=potentialSet)

molecule_configuration.setCalculator(calculator)
