mardi 16 octobre 2018

Comment vérifier que ses publications sont bien publiées dans HAL (à partir de leur DOI)

Préambule

HAL est mis en avant par le CNRS et l'HCéRES pour déposer les listes de publications affiliées à un structure. De même, pour les divers rapports (compte rendu d'activité à vague et demi-vague, CRAC, RIBAC, évaluation ANR, ERC, etc). Les chercheurs sont amenés à très régulièrement faire état de leur liste de publication sur une période donnée.

En partant que l'étape HAL est imposée à un moment ou un autre, autant faire en sorte que le travail soit fait une bonne fois pour toute et donc l'utiliser jusqu'au bout! 

S'il y avait de nombreuses réticences à une époque dues à la lourdeur du processus de dépôt, cela a été amélioré significativement au cours des années. Si cela ne reste pas une partie de plaisir, c'est devenu maintenant raisonnable grâce à un allègement significatif de la saisie manuelle nécessaire.

Comme il y a de nombreux moyen d'avoir une liste personnelle de publications à jour, il est possible de s'en servir pour vérifier si tout est bien fait sur HAL. Je pars du postulat que la majorité des activités de publication correspondent à des articles dans des journaux scientifiques à comité de lecture « sérieux » donc avec un DOI au minimum.

Obtenir sa  liste de DOI pour faire les vérifications

Il faut donc commencer par... avoir une liste de DOI. Je suis parti du principe que chaque chercheur a une liste à jour de ses publications. Seulement, cette liste n'est en général pas directement disponible car stockée sous une autre forme. J'ai donc créé deux scripts :

  • Un premier script à partir d'un fichier texte où j'ai supposé que chaque article était indiqué sous une forme «DOI:XX.XXXX/XXXXXX» avec rien derrière sur la ligne. (j'ai inclus les variations possibles en terme d'espace ou non avant et après les deux point ainsi que le DOI qui peut être une combinaison quelconque de majuscules et minuscules). Cela permet de récupérer tous les DOI avec un DOI par ligne.
  • Un deuxième script qui lui permet d'extraire une liste de DOI à partir d'un fichier .bib.
La majorité des cas permet de se rapporter à une de ces deux situations (Zotero, endnote, mendeley et research gate assurent tous des exports au format bib, csv ou texte.). C'est également possible via un researcherid. Pour Orcid, l'export n'est pas encore trop au point, mais je suppose que quelqu'un va l'implémenter un jour ou l'autre.


Vérifier les dépôts dans HAL à partir de sa liste de DOI



Une fois cette liste obtenue, il suffit de cliquer sur le bouton correspondant pour lancer le script suivant qui permet d'entrer la structure à laquelle on est affilié. Il est bien évidemment possible de sauter l'étape précédente et coller directement la liste de DOI dans le cadre correspondant (depuis un fichier excel par exemple). Pour trouver ce numéro, il faut aller dans AUréHAL, taper le nom de sa structure (son labo), le plus simple est souvent de taper son numéro d'UMR.




Le numéro indiqué sur fond gris est celui qui nous intéresse.

Une fois les DOI et la structure d'affiliation indiqués, c'est parti !

Il y a trois types de résultats :

  1. Les résultats absents de HAL, il va falloir faire l'ajout directement, pour cela, j'ai mis un champ de formulaire, il suffit de cliquer dessus pour que le DOI soit copié dans le presse-papier, il n'y a plus qu'à faire le dépôt sur HAL. L'étape la plus longue est de corriger/trouver les affiliations. Si vous avez créé votre idHal, ça ira un peu plus vite pour vous, de même si vos-co-auteurs ont créé le leur. HAL fait maintenant un peu mieux en essayant de trouver correctement l'affiliation, mais comme c'est assez compliqué, il faut bien faire attention à vérifier ça.

    C'est l'étape la plus longue. Personnellement, je regarde pour les auteurs français et je ne met rien pour les auteurs étrangers qui ont peu de chance de vouloir corriger les dépôts que vous faites dans HAL. Bien évidemment, il est préférable de le faire correctement pour tout le monde, mais quand il y a plusieurs centaines de notices à traiter, il faut faire des compromis...

    Il peut y avoir des cas particuliers où le dépôt ne marche pas très bien : les colloques où il manque généralement la date (à rentrer) et les chapitres de livre qui ont un DOI mais ne sont généralement pas dans CrossRef (donc pour lesquels l'importation de méta-données ne fonctionne pas).
  2. Les résultats dans HAL mais non rattachés à votre labo, il faut alors demander la propriété. Il y a un lien direct sur la référence HAL et il est alors possible de faire la demande directement.
    Si jamais la demande n'aboutit pas, il ne faut pas hésiter à contacter le support qui règle généralement ça en moins d'un journée.
  3. Les publications déposées dans HAL avec au moins un auteur affilié à votre laboratoire (mais pas forcément vous !).

Aller un peu plus loin

Coloration syntaxique et liste d'auteurs affiliés à la structure

Pour mon laboratoire, j'ai créé une liste d'auteurs ayant des publications où au moins un auteur est rattaché au laboratoire. Pour cela, encore un petit script.  C'est un peu long et il faut mieux ne pas trop forcer en mettant l'identifiant d'une grosse structure pour ne pas faire exploser le serveur. La sortie est un peu plus basique et fait une sortie sous forme de deux tableaux javascript : un avec les noms d'auteurs, l'autre avec le nombre de publications correspondant. Le script limite à 3000 noms, ça peut sembler beaucoup, mais avec les thésards, les collaborateurs occasionnels, etc, ça monte vite. J'ai utilisé les données pour les coder en dur car la requête est très gourmande et il est déraisonnable de la faire dynamiquement pour créer le tableau de liste d'auteur à la volée pour chaque requête.

Une fois ces deux tableaux créés, je peux alors m'en servir pour colorer les entrées dans mon script pour mettre en valeur les auteurs qui publient souvent avec l'affiliation du laboratoire. Cela permet de rapidement pouvoir identifier les publications du laboratoire par rapport aux autres publications intruses. En effet, j'ai pu faire des import massifs via Scopus ou Web of Knowledge. Cependant, les recherches sur l'affiliation étant assez difficiles, il y a généralement des publications qui ne viennent pas de mon laboratoire. Pour utiliser les deux tableaux, il faut alors modifier le fichier "includes/HAL.js" en changeant les tableaux « Names » et « numPubli » et changer la valeur de « preferredAffiliation ».

Récupérer des données sur les publications hors HAL

Pour cela, j'utilise l'API de CrossRef qui permet d'avoir les auteurs et sur lesquels je peux faire de la coloration syntaxique.

Utiliser le script pour soi

Pour changer automatiquement l'affiliation il suffit de donner en paramètre dans l'URL l'affiliation : http://perso.ens-lyon.fr/martin.verot/HAL.php?affiliation=776 par exemple pour la structure 776. Idem pour la page permettant de récupérer la liste d'auteurs. Tout est fait en javascript sur les pages, donc il n'est pas forcément nécessaire de faire tourner les différents scripts sur un serveur. L'enregistrer sur son disque et l'ouvrir avec son navigateur suffit.

Vérifier que SON affiliation est la bonne pour chaque DOI

Je suis en train de créer un petit script pour ça...

Conclusion

Tout n'est pas parfait, mais cette petite série d'outils m'a permis de faire environ 200 dépôts et de vérifier plusieurs milliers de notices assez rapidement. N'hésitez pas à commenter l'article ou à m'écrire (mon adresse mail est visible sur cette page) si vous avez des commentaires ou questions.

lundi 18 juin 2018

Des orbitales s, p, d au format vectoriel pour des diagrammes d'orbitales

De la nécessité

S'il n'est pas rare de croiser des diagrammes orbitalaires, leur qualité est beaucoup plus aléatoire. Ainsi, la tendance actuelle est plutôt aux orbitales correspondant à des isosurfaces issues de logiciels dédiés. Cependant, ces orbitales ne permettent pas toujours de comprendre simplement les poids relatifs des différentes orbitales. C'est tout la puissance de la schématisation qui est cruciale ici. Bien que moins rigoureuses, les orbitales schématiques sont souvent plus parlantes et surtout plus faciles à dessiner à la main.


La même orbitale pour NH3 sous orbimol à gauche et en schématique à droite.

Chemdraw propose quelques orbitales mais je ne possède pas le logiciel et il n'y a pas tout (sans parler de l'aspect propriétaire).

La solution



J'ai ainsi eu à tracer de nombreuses diagrammes orbitalaires, pour mon cours sur les complexes en chimie inorganique et pour mon cours de chimie orbitalaire. Sans parler des nombreux devoirs sur tables où des orbitales viennent souvent s'y mêler.

J'ai ainsi mis à disposition mon fichier en format svg (vectoriel) qui permet ainsi de construire tous les diagrammes possibles et imaginables. Je met ce fichier à disposition sous licence CC-NC (pas d'utilisation commerciale). J'avais initialement utilisé des filtres sous Inkscape mais qui étaient rendus sous forme matricielle. Cette version utilise des dégradés et devrait réduire les problèmes de compatibilité. De même, j'ai mis différentes combinaisons de phase afin de mieux pouvoir tracer les orbitales liantes, antiliantes ou non liantes.  J'ai également ajouté des orbitales hybrides toujours pour pouvoir dessiner un maximum de situations. 

Je mettrais peut-être prochainement à disposition des diagrammes d'orbitales plus variés et déjà tous construits.

N'hésitez pas à aller voir ma page de cours où vous pourrez voir des exemples de diagrammes construits à l'aide de ces orbitales.

Sous inkscape

Pour redimensionner aussi les bords des orbitales lorsque vous modifiez les orbitales, il faut cocher le bouton indiqué ci-dessous dans la barre de tâche principale.


De même, pour changer les orientations et phases des lobes, les raccourcis « V » et « H » qui permettent de faire des miroirs sont utiles.