détendre est une source ouverte et projet de logiciel distribué librement qui a été conçu pour étudier la dynamique moléculaire en analysant les données de RMN expérimentales, en soutenant des molécules organiques, l'ARN, les protéines, les sucres, l'ADN, et bien d'autres biomolécules.
Aperçu des caractéristiques
détendre supporte plusieurs théories RMN, met en œuvre divers outils d'analyse de données en tant que composants modulaires, et il peut interfacer avec d'autres programmes, tels que Dasha et sans modèle. En outre, il prend en charge un large éventail de théories RMN, intègre plusieurs outils d'analyse de données, permet aux utilisateurs de visualiser les données, ainsi que d'interagir avec d'autres programmes.
Offres environnements CLI et GUI
En dépit du fait que l'application est fourni avec un CLI (ligne de commande Interface) et GUI (Graphical User Interface) front-end, plusieurs interfaces graphiques utilisateur tiers (GUI) existent pour se détendre.
Prise en charge de différents types d'analyses
Parmi les types pris en charge des analyses, vous détendre peut gérer la dispersion de relaxation, les tests de cohérence de la RMN du champ multiple (résonance magnétique nucléaire) des données de relaxation, le modèle N-Etat et de l'ordre de trame, l'analyse sans modèle, R1 et R2, NOE, RSDM (Réduction de la cartographie de la densité spectrale), ainsi que des enquêtes de stéréochimie.
Créer des scripts très complexes
Afin d'automatiser le processus d'analyse des données, il est possible de créer des scripts très complexes en utilisant des blocs de construction. Pour cela, les développeurs fournissent divers exemples de scripts qui vous aideront à comprendre la construction de script et de créer plus facilement votre propre.
Sous le capot, OSes et la disponibilité soutenue
Regarder sous le capot, nous pouvons remarquer que le programme est entièrement écrit dans le langage de programmation Python et utilise le multi-plateforme Qt GUI toolkit pour son interface utilisateur graphique, ce qui signifie qu'il fonctionne sur Linux, Microsoft Windows et Mac OS X systèmes d'exploitation.
L'application est disponible en téléchargement sous forme d'archives binaires pour de nombreux systèmes d'exploitation GNU / Linux, supportant 32 bits (x86) et 64 bits (x86_64) jeu d'instructions architectures, ainsi qu'une archive source.
Ce qui est nouveau dans cette version:
- Caractéristiques:
- De nombreuses améliorations pour la compilation de la version HTML du manuel détendre.
- Mise à jour se détendre pour éliminer tous les FutureWarnings de numpy & ge; 1.9, à l'épreuve du futur se détendre contre les changements de comportement de numpy à venir.
- Capacité à gérer répliquée R2, points de données eff par la fonction de l'utilisateur relax_disp.r2eff_read, mais en ajoutant 0,001 à la valeur de fréquence pour le point répliqué.
- Un nouveau script d'exemple pour charger un fichier de résultats sans modèle et back-calcul des données de relaxation.
- Amélioration de la manipulation de l'APB données structurelles.
- La mise en œuvre de la fonction de l'utilisateur structure.pca pour effectuer des analyses de composants principaux (PCA) d'un ensemble de structures.
- Ajout d'un script pour un déploiement rapide sur l'infrastructure Google Cloud Computing.
- Changements:
- Fix pour le modèle de commande de cadre rigide 2ème degré matrice d'ordre de trame dans le manuel. Le mauvais symbole a été utilisé.
- Retiré les définitions de newparagraph et newsubparagraph du manuel de LaTeX. Ceux-ci étaient à l'origine des conflits avec latex2html, ce qui empêche la version HTML du manuel d'être compilé. Ces définitions ne sont pas nécessaires pour la configuration actuelle du tronçonnage dans le manuel.
- modification des sous-titres courts dans le nouveau chapitre du manuel des modèles de cadres. Le á runique> caractère ž a été remplacé simplement par «Daeg». Cela est dû à des incompatibilités avec latex2html qui empêche le manuel HTML d'être compilé.
- Suppression de la définition d'une colonne de table fixe largeur du préambule manuel de LaTeX. Cela est nécessaire que les pauses de définition LaTeX2HTML compatibilité, ce qui provoque une corruption dans la numérotation de chiffre obtenu dans les images dans le code HTML pour être essentiellement aléatoire.
- Suppression du paquet accents pour permettre le manuel HTML à compiler. Le paquet accents LaTeX est pas compatible avec latex2html, donc la solution la plus simple est d'éliminer le paquet.
- manuellement tourner l'élément cadre de la matrice de commande EPS figures manuelles, de compatibilité latex2html. La commande '90 rotate »a été supprimé et la zone de délimitation permuté comme un b c d - & gt; b -c d -a. Ceci permet l'argument d'angle dans les includegraphics {} pour être abandonné, comme latex2html ne reconnaît pas. Il permet les chiffres soient visibles dans la version HTML du manuel.
- Refonte de l'ordre de trame de table d'imbrication de paramètres dans le manuel pour la compatibilité latex2html. Le tableau utilise le package tikz, qui est fatale pour latex2html, même si pas utilisé. Par conséquent, la table dans la docs / latex frame_order fichier / / parameter_nesting.tex a été transformé en un document LaTeX autonome pour créer une version recadrée postscript de la table de tikz formaté. Un script de compilation a été ajouté ainsi. Le fichier résultant * .ps est maintenant inclus dans la section d'intégration numérique de PCS, plutôt que cette section création de la table de tikz. Tout le texte tikz de préambule a été supprimé pour permettre latex2html de fonctionner.
- Solution pour latex2html ne pas être en mesure de traiter le paquet allrunes ou police associée. Dans l'environnement htmlonly préambule, les symboles de commande de trame sont redéfinis en utilisant le texte 'Daeg' au lieu du caractère runique á> ž.
- Correction pour les sous et les exposants dans le manuel. Cela introduit {} autour de tous les sous et textrm en exposant {} instances. Ce n'est pas nécessaire pour la version PDF du manuel que le problème du support manquant est évité, mais il affecte la version HTML du manuel compilé par latex2html, qui exige la notation correcte. Les correctifs sont à la fois le nouveau chapitre de l'ordre de trame ainsi que le chapitre de la dispersion de relaxation.
- Modification et corrections pour le détendre 4.0.0 partie du fichier CHANGES.
- Mise à jour et amélioré les instructions du wiki dans le document de liste détendre libérer.
- Un wiki plus des instructions sur la vérification des liens morts dans le document communiqué de liste de contrôle.
- Des changements plus mineurs à la section «Annonce» du document de presse de liste.
- Mise à jour le script shell pour trouver des titres dupliqués dans les fichiers LaTeX du manuel.
- Converti le titre en double trouver script shell dans un script Python. Le script Python est beaucoup plus avancé et utilise une logique différente pour produire un tableau des titres répliquées et leur nombre. Le script renvoie également un état de sortie a échoué lorsque les répétitions existent.
- Converti le titre répliqué trouver le script Python d'utiliser une structure de classe. Cela permet au script d'être importé en tant que module. La constatation répliquée a été déplacé dans un () de la classe de découverte.
- Rebaptisé le titre répliquée trouver script.
- Retiré le titre LaTeX dupliqué trouver script shell. Il est maintenant géré par le script Python beaucoup plus avancé.
- La compilation Scons des manuels PDF et HTML vérifie maintenant pour les titres répliqués. Une nouvelle cible de replicate_title_check a été ajouté aux SCons scripts. Cela appelle la méthode find () de la réplique de script LaTeX titre de conclusion pour déterminer si des titres sont répliqués, et si oui les scons cible retourne avec un sys.exit (1) appel. Cet objectif est fixé au début des cibles de l'user_manual_pdf, user_manual_pdf_nofetch, user_manual_html, user_manual_html_nofetch. Le résultat est que le manuel ne peut pas être établi si les titres de rééchantillonnage existent, ce qui oblige les titres à modifier. Le résultat sera que les pages HTML seront tous uniques, car les résultats des titres répliquées dans une seule page HTML créée pour toutes les sections.
- Élimination des titres répliquées dans les sources LaTeX que les nouveaux chapitres de l'ordre de trame introduit.
- Suppression d'un ancien titre reproduit dans les sources LaTeX pour le manuel. Tel est le titre 'analyse gratuite Model-' qui est utilisé pour l'ensemble du chapitre d'analyse spécifique, ainsi que pour la section des valeurs, des gradients, et Hessians analyse sans modèle pour le chapitre d'optimisation.
- Corrections et impressions améliorées pour l'objectif de la replicate_title_check.
- Mise à jour tous se détendre pour se protéger contre les futurs changements qui se produisent dans le package numpy Python. Depuis la version 1.9 numpy, l'FutureWarning __main __: 1: FutureWarning: comparaison `none` se traduira par une comparaison d'objets d'élément par élément à l'avenir. on le voit dans une grande proportion de l'ensemble des fonctions de détente'S utilisateur. Ceci est pris et transformé en un RelaxWarning avec le même message. Le problème est que le comportement des opérateurs de comparaison == et! = Va changer avec les futures versions numpy. Ceux-ci ont été remplacés par est ou non dans toute la base détendre code. Des modifications ont également été apportées aux forfaits minfx et bmrblib pour correspondre.
- Plus de protection future contre les changements numpy. Le FutureWarning est `rank` est obsolète; utiliser l'attribut `ndim` ou de la fonction à la place. Pour trouver le rang d'une matrice voir `numpy.linalg.matrix_rank`. Par conséquent, la N-Etat méthode de la fonction cible modèle paramag_info () a été mis à jour pour utiliser l'attribut .ndim et plus l'utilisation numpy.rank () fonction.
- Créé le test du système Mf.test_bug_23933_relax_data_read_ids. Ceci est conçu pour attraper le bogue # 23933, le "NameError: nom global 'ids' est pas défini" problème lors du chargement des données de relaxation. Une version tronquée des données de fichier et de relaxation PDB, les versions complètes de ce qui sont jointes au rapport de bogue, constitué uniquement des résidus 329, 330, et 331 ont été ajoutés aux répertoires de données suite de tests partagés, et le test du système écrit attraper le NameError.
- Mise à jour le test du système Mf.test_bug_23933_relax_data_read_ids pour attraper le RelaxMultiSpinIDError. Cela permet le test du système pour passer, comme on attend une RelaxMultiSpinIDError.
- Mise à jour des versions minfx et bmrblib dans le document communiqué de liste de contrôle pour 1.0.12 et 1.0.4. Ceci est de supprimer les messages FutureWarning numpy sur le == None et =! Aucune comparaison à des structures de données numpy, qui à l'avenir changement de comportement.
- Augmentation du Gna! nouvelles article sectionnant profondeur dans le document communiqué de liste de contrôle.
- Élargissement de la description de la fonction sequence.attach_protons utilisateur. Cela découle de http://thread.gmane.org/gmane.science.nmr.relax.user/1849/focus=1855.
- Ajout de données initiales pour les données d'essai de Paul Schanda. Cela démontre qu'il existe plusieurs possibilités pour améliorer la R2, méthode du point eff.
- Ajout du test du système Relax_disp.test_paul_schanda_nov_2015. Cela va attraper le prêt de valeurs nan.
- Fait contrôle supplémentaire à la lecture de la séquence, que les valeurs nan sont ignorées.
- Faire en sorte que le point de 4000 Hz répliqué pour l'expérience 950 MHz ne sont pas écrasées.
- Dans le test du système Relax_disp.test_paul_schanda_nov_2015, a ajouté un test de comptage du R2, les valeurs eff. Cela montre que la R2 répliqué, eff à 950 MHz / 4000 point de Hz est écrasée. Une solution pourrait être de changer la fréquence de dispersion très peu, pour permettre l'ajout du point de données.
- Ajout d'autres tests pour Relax_disp.test_paul_schanda_nov_2015. Cela montrera que les répétitions de R2, les valeurs eff ne sont pas bien gérées.
- Dans la fonction de r2eff_read dans le module de données de la dispersion, ajoute les possibilités de lire R2, les valeurs eff qui sont répliqués. Cela se fait d'abord vérifier si la clé de dispersion existe dans le R2, le dictionnaire eff. Si elle existe, continuer d'ajouter 0,001 à la fréquence jusqu'à ce qu'une nouvelle possibilité existe. Cela devrait aider à gérer plusieurs R2, les points eff, en tant que valeurs séparées et ne pas prendre de décision pour les moyenne.
- Ajout l'espoir de lever une détente erreur, si vous essayez de tracer et aucune information de modèle est stocké.
- Raising une erreur si traçant des courbes de dispersion, et aucun modèle est enregistré.
- Changement de script d'exemple pour l'analyse des données.
- Extended le test du système Relax_disp.test_paul_schanda_nov_2015 pour inclure l'auto-analyse et unique en cluster. Cela devrait montrer que l'analyse est maintenant possible.
- Ajout d'un état temporaire et un script pour la configuration de l'interface graphique aux données Paul Schanda.
- Ajout du test Relax_disp.test_paul_schanda_nov_2015 GUI. Cela montrera que le chargement d'un Etat va créer un problème. Traceback (appel le plus récent dernier): TypeError:. Int () argument doit être une chaîne ou un nombre, pas 'NoneType'
- Ajout d'un exemple de script pour les données de relaxation arrière-calcul à partir d'un fichier de résultats sans modèle. Ceci est utile lorsque le fichier de résultats est pas le modèle final, ces résultats fichier ne contient pas les données de back-calculée. Ceci est en réponse à la demande de soutien de # Christina Moller 3303.
- Utilisation de Gary lib.float.isNaN () au lieu de math.isnan (), d'avoir une compatibilité ascendante avec python 2.5.
- Correction d'erreur d'orthographe et de documenter le nouveau comportement de relax_disp.r2eff_read, lors de la lecture R2, les points eff avec la même fréquence. Si le spin-conteneur contient déjà R2, les valeurs eff avec la «fréquence de l'impulsion CPMG 'ou' intensité de champ de spin-lock», la fréquence sera modifiée par une petite valeur infinitésimale de + 0,001 Hz. Cela permet de doublons ou plus de la même fréquence.
- modifié l'objet structurel interne est moins influencé par le format de l'APB. Le numéro de série PDB est maintenant intelligemment géré, en ce qu'il est remis à 1 quand un nouveau modèle est créé. Cette information est toujours maintenu pour supporter la logique de la lecture des enregistrements CONECT, et sera éliminé à l'avenir. Les informations d'identification de la chaîne est désormais plus stocké dans l'objet structurel interne, car cette information est recréée par la fonction de l'utilisateur structure.write_pdb basée sur la façon dont l'objet structurel interne a été créé.
- Mises à jour des classes de test Noe et le système de structure pour les changements structurels internes de l'objet. Le numéro de série peut maintenant être remis à zéro, et les informations d'identification de la chaîne ne sont plus stockées.
- Ajout d'un fichier dans la suite partagé des données de test pour aider à mettre en œuvre l'analyse structurale PCA. Ceci est le domaine N du complexe CaM-IQ utilisé dans une analyse d'ordre de trame. Ce sont les 5 premières structures à partir d'un appel à la fonction de l'utilisateur frame_order.distribute, avec les différents organes rigides-fusionnés de retour ensemble dans une seule molécule.
- Création de la fonction avant la fin de l'utilisateur structure.pca. Ceci est actuellement modélisée sur le cadre de la fonction de l'utilisateur structure.rmsd.
- la mise en œuvre de base de la fonction back-end de l'utilisateur structure.pca. Ceci est la nouvelle fonction pca () du module pipe_control.structure.main. Il effectue simplement quelques vérifications, rassemble les coordonnées atomiques, et les passes de contrôle à la fonction détendre pca_analysis bibliothèque () du module lib.structure.pca actuellement inappliquées.
- partielle mise en œuvre de l'analyse PCA dans la bibliothèque se détendre. Ceci est pour la nouvelle fonction de l'utilisateur structure.pca. Le module lib.structure.pca a été créé, et la fonction pca_analysis () créé pour calculer la matrice structure de covariance, via la fonction calc_covariance_matrix (), puis calculer les valeurs et vecteurs propres de la matrice de covariance, de les trier et de tronquer la nombre souhaité de modes APC.
- Ajout des arguments de l'algorithme et num_modes à la fonction de l'utilisateur structure.pca. Ceux-ci sont passés tout le chemin dans le backend bibliothèque se détendre.
- Mise en œuvre de l'algorithme de SVD pour l'analyse PCA dans la bibliothèque se détendre. Cela appelle simplement numpy.linalg.svd ().
- L'analyse de l'APC dans la bibliothèque détendre calcule maintenant les projections par structure le long des PC.
- La fonction d'analyse PCA dans la bibliothèque détendre retourne maintenant des données. Cela inclut les valeurs de l'APC et des vecteurs, et les projections par structure.
- Les valeurs et les vecteurs de l'APC, et les projections par structure sont maintenant stockés. Ceci est la fonction utilisateur structure.pca back-end dans le module de pipe_control.structure.main.
- Ajout du format et des arguments dir à la fonction de l'utilisateur structure.pca. Ceci est à l'avant et se termine en arrière.
- Modifiés les assemble_structural_coordinates () pour revenir plus d'informations. Ceci provient du module de pipe_control.structure.main. La liste argument de type booléen est maintenant accepté ce qui entraînera la fonction pour retourner en outre la liste d'ID d'objet par molécule, la liste des numéros de modèle par molécule, et la liste molécule de nom par molécule.
- La fonction d'utilisateur structure.pca crée maintenant des graphiques des projections de PC. Cela inclut PC1 vs PC2, PC2 vs. PC3, etc.
- Ajout des résultats Gromacs PCA pour le fichier distribution.pdb. Cela inclut un script utilisé pour exécuter toutes les parties de Gromacs et tous les fichiers de sortie.
- Mise à jour des résultats Gromacs PCA pour la nouvelle version 5.1.1 Gromacs.
- Création d'un test initial du système Structure.test_pca. Cette exécute la nouvelle fonction d'utilisateur structure.pca, et vérifie si les données sont stockées dans cdp.structure.
- Amélioration des graphiques dans le backend de la fonction de l'utilisateur structure.pca. Les graphiques sont maintenant regroupés afin que les différents modèles de la même structure dans le même canal de données sont dans un jeu graphique. L'en-tête graphique a également été améliorée.
- élargi les contrôles de test du système Structure.test_pca pour comparer les valeurs de Gromacs.
- Une structure moyenne pondérée peut maintenant être calculé. Ceci est pour la fonction calc_mean_structure () de la bibliothèque se détendre lib.structure.statistics module. Les poids peuvent désormais être fournis pour chaque structure pour permettre une moyenne pondérée doit être calculée et retourné.
- Ajout du support pour les structures d'observation dans la fonction de l'utilisateur structure.pca. Cela permet à un sous-ensemble des structures utilisées dans l'analyse PC pour avoir un poids zéro, de sorte que ces structures peuvent être utilisées à des fins de comparaison. Les obs_pipes, obs_models et obs_molecules arguments ont été ajoutés à l'extrémité avant de la fonction de l'utilisateur. Le backend utilise pour créer un tableau de poids pour chaque structure. Et les fonctions de lib.structure.pca utilisent les poids zéro pour éliminer les structures d'observation des calculs en mode PC.
- Créé le test du système Structure.test_pca_observers. Ceci est pour tester la nouvelle structures d'observation concept de la fonction de l'utilisateur structure.pca.
- Amélioration des impressions de la détente bibliothèque analyse en composantes principales. Ceci est la fonction pca_analysis () du module de lib.structure.pca.
- Corrections et améliorations pour les graphiques produits par la fonction de l'utilisateur structure.pca. Les différents ensembles sont maintenant correctement créés et sont maintenant étiquetés dans les parcelles.
- Ajout d'un script de déploiement de test, pour un déploiement rapide sur Google Cloud Computing. Ceci est pour une installation destinée à Ubuntu 14.04 LTS.
- Élargir le script pour l'installation.
- Mettre l'installation dans les fonctions de script de déploiement.
- Fractionnement déployer script dans plusieurs petites fonctions.
- Ajout d'instructions de contrôle à installer script.
- Lorsque l'approvisionnement des scripts, plusieurs fonctions peuvent être exécutées à la place.
- espaces Added to script d'installation pour une meilleure impression.
- Ajout d'un script d'apprentissage.
- Ajout de 2 scripts tutoriel.
- Correction de petite erreur spin ID dans le script tutoriel.
- Création d'un test du système pour attraper le bogue # 24131, l'échec de l'exportation BMRB lorsque l'objet SpinContainer n'a pas d'attribut de S2, tel que rapporté par Martin Ballaschk.
- Modifié le test du système Mf.test_bug_24131_bmrb_deposition pour vérifier la RelaxError. Les résultats des tests dans un RelaxError, comme le fichier de résultats ne contient pas de spins sélectionnés.
- Ajout du test du système Mf.test_bug_24131_missing_interaction pour attraper un autre problème. Cela fait partie du bogue # 24131, l'échec de l'exportation BMRB avec l'objet SpinContainer sans valeur S2. Toutefois, la correction précédente de sauter spins désélectionnés a introduit un nouveau problème de détendre toujours à la recherche pour les interactions interatomiques pour que le spin désélectionné.
- Bugfixes:
- titres répliquées dans la version HTML du manuel détendre, et donc reproduit les noms de fichiers HTML en écrasant les sections précédentes, ont été éliminés.
- Correction de bug # 23933, le "NameError: nom global 'ids' est pas défini" problème lors du chargement des données de relaxation. Le bug a été introduit en Novembre 2014, et est due à un certain code de gestion des erreurs incomplètes. Le problème est que le type de spin que les données de relaxation appartient à (@N vs. @H) n'a pas été spécifié. Maintenant, la bonne RelaxMultiSpinIDError est soulevée. La variable ids n'existait pas -. Il était le code qui a été prévu pour être ajouté, mais n'a jamais été et a été oublié
- Correction de la CSA équation constante dans le chapitre du manuel sans modèle. Cela a été repéré par Christina Moller et a rapporté les RELAX-liste de diffusion.
- Correction d'un bug pour le stockage de l'objet XML structurel dans les fichiers d'état et les résultats. Auparavant, tous les objets ajoutés à cdp.structure (ou tout autre objet de structure) ne seraient pas sauvés par la méthode objet structurelle to_xml (), sauf si la fonction est explicitement modifié pour stocker cet objet. Maintenant, tous les objets présents seront convertis en XML.
- Correction de l'analyse de la dispersion de relaxation dans l'interface graphique, comme pris par le test Relax_disp.test_paul_schanda_nov_2015 GUI. Lors du chargement d'un fichier de script d'état, la valeur de None peut être présent. Ceci est maintenant réglé sur les valeurs standard.
- Fix pour la course se détendre sur un serveur sans affichage graphique et en utilisant matplotlib. L'erreur a été trouvé avec le test du système Relax_disp.test_repeat_cpmg. Et l'erreur générée est: QXcbConnection: Impossible de se connecter à afficher. Aborted (core dumped). L'arrière-plan de matplotlib doit être changé. Ceci est par exemple décrit dans: http://stackoverflow.com/questions/2766149/possible-to-use-pyplot-without-display et http://stackoverflow.com/questions/8257385/automatic-detection-of-display-availability-with-matplotlib.
- Modification du comportement du bmrb.write backend de fonction de l'utilisateur pour une analyse sans modèle (correctif pour le bogue # 24131). Ceci est la méthode bmrb_write () de l'analyse du modèle API libre. spins désélectionnés sont maintenant ignorés et un chèque a été ajouté pour être sûr que les données de spin a été assemblé.
- Un autre correctif pour le bogue # 24131, l'échec de l'exportation BMRB lorsque l'objet SpinContainer n'a pas d'attribut de S2. Maintenant, aucune donnée est stockée dans le fichier BMRB si un modèle sans modèle n'a pas été mis en place pour le spin. Cela permet à la suite de tests à passer.
- Bug fix pour permettre le test du système Mf.test_bug_24131_missing_interaction passer. Cela fait partie du bogue # 24131, l'échec de l'exportation BMRB avec l'objet SpinContainer sans valeur S2. Le problème était lors de l'assemblage des données de tenseur de diffusion. La fonction spin_loop () a été appelé, le tenseur de diffusion est rapporté pour tous les résidus. Par conséquent, la skip_desel = True a été ajouté pour correspondre à la partie sans modèle.
Ce qui est nouveau dans la version 4.0.0:
- Caractéristiques:
- La mise en œuvre finale, complète et correcte de la théorie de l'ordre de trame pour étudier les mouvements de corps rigides. Ceci est actuellement pour analyser les données de RDC et PCS des systèmes alignés en interne.
- Changements:
- Suppression de la fonction de l'utilisateur frame_order.average_position et tout le code backend associé. Cette fonction de l'utilisateur permet à l'utilisateur de spécifier cinq types de déplacements différents à la position moyenne de domaine mobile: une rotation pure, sans traduction, autour du pivot du mouvement dans le système; une rotation autour du pivot du mouvement du système accompagnée d'une traduction; une translation pure sans rotation; une rotation autour du centre de masse du domaine en mouvement sans traduction; une rotation autour du centre de masse du domaine se déplaçant avec une translation. Maintenant, la dernière option sera la valeur par défaut et seule option. Cette option est équivalent à l'algorithme standard de superposition (l'algorithme Kabsch) à une structure hypothétique de la position réelle moyenne. Les quatre autres sont dues à l'histoire du développement de la théorie. Ceux-ci limite l'utilité de la théorie et ne fera que provoquer la confusion.
- Le nettoyage du code de la fonction cible de commande de cadre. Cela correspond à la modification précédente de la suppression de la fonction de l'utilisateur frame_order.average_position. Les changements comprennent la suppression de l'option d'optimisation de la traduction comme ceci est maintenant toujours effectuée, et le retrait du drapeau qui provoque le point rotation de domaine pivot moyen pour correspondre au point de pivot motional que ceux-ci sont désormais découplées de façon permanente.
- ordre alphabétique des fonctions dans le module lib.frame_order.pseudo_ellipse.
- éliminé tous les modèles 'ligne' de commande de cadre, car ils ne sont pas encore mises en œuvre. Ceci est le code de frontend juste -. N'existe pas le backend
- Mise à jour le cône CaM script optimisation du modèle de test de commande de cadre isotrope. En raison de tous les changements dans l'analyse de l'ordre de trame, l'ancien script était plus fonctionnel.
- Création d'un script pour les modèles de test de commande de cadre de CaM pour trouver la position moyenne de domaine. La rotation autour d'un pivot fixe a été éliminé, le passage de 1J7P_1st_NH_rot.pdb à 1J7P_1st_NH.pdb doit être convertie en une translation et une rotation autour de l'CoM. Ce script sera utilisé pour remplacer la rotation de pivot angles d'Euler avec le vecteur de translation et de rotation CoM angles d'Euler. Cependant, la fonction utilisateur structure.superimpose devra être modifié pour gérer à la fois la superposition de barycentre standard, ainsi que d'une superposition de CoM.
- Mise à jour le test de commande de script modèle de superposition d'image de CaM. La fonction de l'utilisateur structure.superimpose est maintenant correctement appelé. Le fichier journal de sortie a été ajouté au référentiel car il contient la traduction correcte et Euler information de rotation nécessaire pour les modèles de test.
- Mise à jour des paramètres pour le cône CaM script optimisation du modèle de test de commande de cadre isotrope. Les angles d'Euler de la rotation autour du pivot de mouvement ont été remplacés par les paramètres de rotation de CoM vecteur de translation et d'angle d'Euler.
- Correction d'un certain nombre de modèles d'ordre de trame qui ne disposent pas de contraintes de paramètres. La fonction linear_constraint () retournait A, b = [], [] pour ces modèles, mais ces numpy tableaux vides ont été à l'origine de la bibliothèque de minfx à l'échec. Ces valeurs sont désormais capturés et l'algorithme de contrainte désactivé dans le () méthode API spécifique minimiser.
- Augmentation de la précision de toutes les données dans le script test de commande de base de génération de données de trame de CaM. Ceux-ci ont tous été convertis de float16 à float64 types numpy.
- Fix pour le réglage d'erreur RDC dans le script test de commande de base de génération de données de trame de CaM. La structure de données rdc_err est situé dans les conteneurs de données inter-atomiques, aucun des récipients de spin.
- Modification de la partie structure de chargement du script de base de génération de données de commande de cadre de CaM. Les structures sont maintenant chargés uniquement si le drapeau de DIST_PDB est réglé, car ils ne sont utilisés que pour générer la distribution 3D des structures. Cela permet d'économiser beaucoup de temps et de la mémoire de l'ordinateur.
- Huge speedup du script de base de génération de données de test de commande de cadre de CaM. En utilisant des matrices multidimensionnelles numpy pour stocker les positions des atomes et des vecteurs unitaires de tous XH tours et en effectuant des rotations sur ces structures à l'aide numpy.tensordot (), les calculs sont désormais un facteur de 10 fois plus rapide. La barre de progression a dû être changé pour montrer tous les 1000 au lieu de 100 itérations. Les rotations des positions et des vecteurs sont maintenant effectuées séquentiellement, fixant accidentellement un bug avec les modèles de mouvement doubles (à savoir le modèle «double rotor»).
- Modifié le test de commande de script de base de génération de données de trame de CaM pour conserver l'ordinateur RAM. Le vecteur de XH et des structures de données de position atomiques pour tous les N rotations sont maintenant de l'numpy.float32 plutôt que le type de numpy.float64. Le principal changement consiste à calculer les moyennes et cdr moyenne PCSs séparément, en supprimant les structures de données N-taille une fois que les fichiers de données sont écrites.
- Refonte complète de la génération de données de commande script de base du cadre de CaM pour les économies de vitesse et de mémoire. Bien que le vecteur de liaison XH pivoté et atomique code de position a été très rapide, la quantité de mémoire nécessaire pour stocker ceux-ci dans les conteneurs de spin et de conteneurs de données interatomiques était énorme quand N & gt; 1e6. Les rdc.back_calc et utilisateur pcs.back_calc appels de fonctions ultérieures seraient également beaucoup trop long. Par conséquent, le script de base a été redessiné. La méthode _create_distribution () a été divisé en quatre: _calculate_pcs (), _calculate_rdc (), _create_distribution (), et _pipe_setup (). La méthode _pipe_setup () est appelée en premier à mettre en place le tuyau de données avec toutes les données requises. Puis le _calculate_rdc () et _calculate_pcs () méthodes, et enfin _create_distribution () si le drapeau de DIST_PDB est réglé. Les appels aux fonctions utilisateur rdc.back_calc et pcs.back_calc ont été éliminés. Au lieu de cela le _calculate_rdc () et _calculate_pcs () méthodes calculent la RDC et PCS en moyenne eux-mêmes comme numpy structures de tableau. Plutôt que de stocker l'énorme vecteurs tournés et les positions des structures de données atomiques, les CDR et PCSs sont additionnés. Ceux-ci sont ensuite divisées par self.N à la fin de la moyenne des valeurs. Par rapport à l'ancien code, lorsque N est fixé à 20 millions l'utilisation de la RAM tombe de ~ 20 Go à ~ 65 MB. La durée totale de fonctionnement est également diminué sur un système de quelques jours à quelques heures (un ordre ou deux de grandeur).
- Changement de l'état d'avancement compteur de mise à jour pour le script test de l'ordre de base de génération de données de trame de CaM. Le spinner était beaucoup trop rapide, la mise à jour toutes les 5 incréments, et est maintenant mis à jour tous les 250. Et le nombre total est maintenant seulement imprimé 10.000 incréments.
- Amélioration de la barre de progression pour le script de base de génération de données de test de commande de cadre de CaM. Les virgules sont maintenant imprimés entre les milliers et les chiffres sont maintenant justifiés à droite.
- Forte augmentation de la précision de la RDC et PCS moyenne. Ceci est pour le script de base de génération de données de test de commande de cadre de CaM. En additionnant les CDR et PCSs en 1D tableaux de numpy.float128 (pour cela, un système 64-bit est nécessaire), puis en divisant par N, à la fin, la valeur moyenne peut être calculée avec une précision beaucoup plus élevée. Comme N devient plus grande, la moyenne numérique introduit des quantités plus grandes et plus d'artefacts de troncature. Donc, ce changement allège cela.
- Fix pour la RDC et PCS en moyenne dans le script test de commande de base de génération de données de trame de CaM. Pour le modèle de rotor double, ou tout modèle de mode de mouvement multiple, la moyenne était incorrecte. Au lieu de diviser par N, les valeurs doivent être divisées par N ^ M, où M est le nombre de modes motional.
- énorme augmentation de la précision des données de test de modèle CaM de commande de cadre de rotor libre. La plus grande précision est parce que les structures numériques dans la distribution est maintenant vingt millions au lieu d'un million, et beaucoup plus de précision moyenne de numpy.float128 du script de base de génération de données mise à jour a été utilisé. Ces données devraient permettre une meilleure estimation des valeurs des paramètres de position bêta et gamma domaine moyenne pour les modèles de rotor libres qui sont touchés par l'effondrement du paramètre alpha à zéro.
- énorme augmentation de la précision des données de test de modèle CaM de commande de cadre à double rotor. La plus grande précision est parce que les structures numériques dans la distribution est maintenant plus de vingt millions (4500 ^ 2) plutôt que d'un quart de million (500 ^ 2). Et le plus élevé de la moyenne précision numpy.float128 du script de base de génération de données mise à jour a été utilisé.
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
C'est à dire.
Ce qui est nouveau dans la version 3.3.4:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 3.3.1:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 3.3.0:
- Caractéristiques:
- Changements:
Ce qui est nouveau dans la version 3.1.5:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 3.1.3:
- Changements:
Ce qui est nouveau dans la version 3.1.2:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 3.1.1:
- Caractéristiques:
- Changements:
- Caractéristiques:
- Changements:
- & Gt;
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 3.0.1:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
Ce qui est nouveau dans la version 2.2.3:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 2.2.1:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 2.1.2:
- Caractéristiques:
- Changements:
Ce qui est nouveau dans la version 2.1.1:
- Caractéristiques:
- Changements:
- Bugfixes:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 2.0.0:
- Caractéristiques:
- Changements:
Ce qui est nouveau dans la version 1.3.15:
- Caractéristiques:
- Changements:
- Bugfixes:
Ce qui est nouveau dans la version 1.3.9:
Exigences :
Commentaires non trouvées