setVerbosity(MinimalLog)

# Define elements
elements = [Hydrogen, Oxygen, Hydrogen]

# Define coordinates
cartesian_coordinates = [[ 0.108951309297,  0.005076393474, -0.7628349255  ],
                         [ 0.361274639227, -0.031596933094,  0.153063843526],
                         [-0.470225948524,  0.02652053962 ,  0.609771081974]]*Angstrom

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


# LCAOCalculator
solvation_parameters = CosmoSolvationParameters()

calculator = LCAOCalculator(
    solvation_parameters=solvation_parameters
)

# Set Calculator
water.setCalculator(calculator)
water.update()
nlsave('water.hdf5', water)

# SolvationEnergy
solvation_energy = SolvationEnergy(
    configuration=water
)
nlsave('water.hdf5', solvation_energy)

# Create the species.
water_species = CosmoRealSpecies(
    water,
    solvation_energy=solvation_energy,
    melting_point=273.15*Kelvin,
    density=1*gram*cm**-3,
)

# Add boiling point data.
water_species.setBoilingPoint(373.15*Kelvin)

# Retrieve sigma profile.
charge_densities, sigma_profile = water_species.sigmaProfile()

# Retrieve the sigma profile plot.
plot = water_species.sigmaProfilePlot()
Plot.show(plot)
