# building a contact map - required for Contact model calculations
#-------------------------------------------------------------------------------
#from CMAP import CMAP
#cmap = CMAP(pdb = os.path.join(PEPDICE_EXAMPLES , 'LABIO_set/1I6C/1I6C_A_AMBER_minimized.pdb'), cutoff = 6.5, log = True)
#-------------------------------------------------------------------------------


PDB      = '1GAB'
sequence = 'TIDQWLLKNAKEDAIAELKKAGITSDFYFNAINKAKTVEEVNALKNEILKAHA'

# creating a new system 
system = Molecule()
system.name = PDB+'-from_sequence' 
system.build_peptide_from_sequence (
                                     sequence    = sequence,
                                     _type       = 'amber'       ,
                                     force_field = 'ff03ua.labio',
                                     overwrite   = True          ,
                                     )
system.set_energy_model('RAW')


minimize(molecule = system,
               imin  = 1          ,
               maxcyc= 1000       ,
               ncyc  = 100        ,
               cut   = 10         ,
               rgbmax= 999        ,
               igb   = 1          ,
               ntb   = 0          ,
               ntpr  = 100        ,
               ntr   = 0          )

#-------------------------------------------------------------------------------
PEPDICE = os.environ.get('PEPDICE')
PEPDICE_EXAMPLES = os.path.join(PEPDICE, 'Examples')
PEPDICE_PARAMETER= os.path.join(PEPDICE, 'Parameters')
#-------------------------------------------------------------------------------
#/home/farminf/Programas/PepDice/Examples/outputs/1gab_amber_example04_extended.pdb

system = Molecule()
name = 'poliALa_1GAB_from_sequence_CMAP_SSrest_restraints'
TRAJECTORY = name+'_traj'
system.name = name
system.build_peptide_from_sequence (
                                     sequence    = 'TIDQWLLKNAKEDAIAELKKAGITSDFYFNAINKAKTVEEVNALKNEILKAHA',
                                     _type       = 'amber'       ,
                                     force_field = 'ff03ua.labio',
                                     overwrite   = True          ,
                                     )
system.set_energy_model('RAW')

                                                    #AAAAAAAA
system.import_SS_restraints_from_string (      ss = 'CCHHHHHHHHHHHHHHHHHHCCCCCHHHHHHHHHCCCHHHHHHHHHHHHHHCC', 
                                            w_ss  = '00023456788888654320000000034565400000023456789654000', log= True)
print system.compute_SS_energy(log = True)

system.energy_components['SS_RESTRAINT']  [1]= 1.0 
system.energy_components['SIZE'          ][1]= 0.0
system.energy_components['CONSTANT'      ][1]= 0.0
system.energy_components['ANGLE'         ][1]= 0.0
system.energy_components['BOND'          ][1]= 0.0
system.energy_components['DIHED'         ][1]= 0.0
#----------------------------------------------------#
import random
random.seed(1234)


#-------------------------------------------------------------------------------
PEPDICE = os.environ.get('PEPDICE')
PEPDICE_EXAMPLES = os.path.join(PEPDICE, 'Examples')
PEPDICE_PARAMETER= os.path.join(PEPDICE, 'Parameters')
#-------------------------------------------------------------------------------
#/home/farminf/Programas/PepDice/Examples/outputs/1gab_amber_example04_extended.pdb

system = Molecule()
system.build_peptide_from_sequence (
                                     sequence    = 'KLPPGWEKRMSRSSGRVYYFNHITNASQWERPSGNSSSG',
                                     _type       = 'amber'       ,
                                     force_field = 'ff03ua.labio',
                                     overwrite   = True          ,
                                     )
system.set_energy_model('iLABIO')
'''

minimize(
        molecule=system,
        imin  =   1,
        maxcyc=1000,
        ncyc  = 100,
        cut   =  10,
        rgbmax= 999,
        igb   =   1,
        ntb   =   0,
        ntpr  = 100,