Package fichier
use fichier
my $fich = fichier->new($ARGV[0]);
fichier est un objet fichier. A l'instanciation la methode init()
est lancée, cette dernière va ouvrir, lire le fichier pour pouvoir instancier les objets chaine, acideamine et atome.
Les différentes méthodes utilisées sont :
new($class, $nomfichier)
Constructeur du package.
my $fich = fichier->new($ARGV[0]);
Créer un objet fichier et exécute init().
init()
Cette methode sert a initier tous les objets.
initSAS()
Lance les calculs d'accessibilite
setNomOrga()
Modifie l'attribut nomorga.
getNomOrga()
Recupération du nom de l'organisme.
print "Organisme : ".$fich->getNomOrga()."\n";
affiche le nom de l'organisme.
setNomProt()
Modifie l'attribut nomprot.
getNomProt()
Récupération du nom de la protéine.
print "Protéine : ".$fich->getNomProt()."\n";
affiche le nom de la protéine.
setNbChain()
Modifie l'attribut nbchain.
getNbChain()
Renvoie le nombre de chaine se trouvant dans la séquence.
print "Nombre de chaine : ".$fich->getNbChain()."\n";
affiche le nombre de chaine.
setChaine()
Modifie la nature de la chaine
getChaine()
my $chaine = $fich->getChaine();
retourne l'objet chaine (reference a un hachage contenant toutes les chaines)
ajouterChaine()
Cas où on a un nom de chaine :
$self->ajouterChaine($1, $chaine);
ajoute l'objet chaine
Cas ou il y a pas de nom de chaine :
$self->ajouterChaine($DEFAUT,chaine->new($DEFAUT));
$DEFAUT est le nom de la chaine par défaut
getNbAaTotal()
my $nbaa = $fich->getNbAaTotal();
retourne le nombre total d'acides amines
getStructure()
my $st = $fich->getStructure();
retourne l'objet structure secondaire (reference a un hachage contenant toutes les structures secondaires)
ajouterStructure()
$self->ajouterStructure($id, $struct);
ajoute l'objet structure secondaire - $id = concatenation "chaine-nature-numero"
descriptionStructureSecondaire()
my $des = $self->descriptionStructureSecondaire() renvoie une description succinte des structures secondaires qui composent le modele
getNbStructures
my ($nbhel, $nbsh, $aahel, $aash) = $self->getNbStructures(); renvoie le nombre d'helices, de brins, d'aa dans helices, d'aa dans brins
nombreTotalAtome()
$fich->nombreTotalAtome()>
affiche le nombre total d'atome se trouvant dans le fichier
initAtome()
fichier::initAtome($self, $nature, $x, $y, $z, $chaine_ligne, $numaa, $nomaa);
récupère toutes les informations pour atome et instancie les objets.
fichierXYZRN()
$self->fichierXYZR($nomfichiersortie);
ouvre un fichier xyzrn et écrit dedans grâce à la fonction ecrireligne
MSMS()
$self->MSMS($nomfichiersortie);
appel le logiciel MSMS qui calcul la sas pour chaque atome grâce aux valeurs se trouvant dans le fichier xyzrn
SAS()
$self->SAS($self->{nomfichierarea});
lit le fichier sortie_msms.area qui est le fichier sorti du logiciel MSMS et récupère la valeur sas pour l'initier à l'atome correspondant
ecrireligne()
$ligne .= $hash->{$chaine}->ecrireligne();
écrit dans le fichier xyzrn les valeurs de x, y, z, le rayon de Van der Waals, le nom de chaine, la nature de l'atome, le nom de l'acide aminé et son numéro.
trouverAtome()
$atome = $hash->{$chaine}->trouverAtome($numAA, $nomA);
recherche un atome donné dans la série d'atome initialisée
enfoui()
$buried = $hash->{$chaine}->enfoui($numAA);
regarde si un acide aminé est enfoui ou pas, si tous ces atomes ont une sas inférieur à 5 alors il est enfoui
structure()
$self->structure($AA);
renvoie la nature de la structure secondaire pour un acide aminé donné
comparaisonEnvironnement()
$fich_sauvage->comparaisonEnvironnement($fich_mutant, 'sortie_sauvage', 'sortie_mutant', 'area_sauvage', 'area_mutant', 'defaut', 69 , 69 , 4, 6);
compare deux acides aminés de deux fichiers différents, un sauvage et un muté grâce à des fonctions déjà créés
hashcomparaison()
my $hash_web = $self->hashcomparaison($nom_AAs, $nom_AAm, $compAA, \@Enviro_sauvage, \@Enviro_mutant, $structure_sauvage, $structure_mutant, $charge_sauvage, $charge_mutant, \@LH_sauvage, \@LI_sauvage, \@LHP_sauvage, \@LD_sauvage, \@Clash_sauvage, $enfoui_sauvage, \@LH_mutant, \@LI_mutant, \@LHP_mutant, \@LD_mutant, \@Clash_mutant, $enfoui_mutant, $aromatique_sauvage, $aliphatique_sauvage, $polaire_sauvage, $hydrophobe_sauvage, $aromatique_mutant, $aliphatique_mutant, $polaire_mutant, $hydrophobe_mutant);
renvoie les résultats de la comparaison des caractéristiques des acides aminés dans une table de hashage