pyextal.jaxJoint.report ======================= .. py:module:: pyextal.jaxJoint.report .. autoapi-nested-parse:: What a joint refinement prints and writes about the shared parameters. Functions --------- .. autoapisummary:: pyextal.jaxJoint.report._g pyextal.jaxJoint.report.print_link_table pyextal.jaxJoint.report.print_shared_result pyextal.jaxJoint.report.write_summary Module Contents --------------- .. py:function:: _g(key) .. py:function:: print_link_table(table, datasets, limit=40) Each shared U_g: start value, where it appears and under which label. Labels read ``(h,k,l)+`` (the same value), ``-`` (sign-flipped by a glide or screw), ``*`` (conjugated, the Friedel mate) or a phase in degrees. :param table: From `jaxJoint.datasets.prepare`. :type table: dict :param datasets: The `Dataset` objects. :type datasets: list :param limit: Rows printed; the rest are summarised. :type limit: int .. py:function:: print_shared_result(G, table, imag, limit=40) Start and refined value of each shared U_g (layer 1). .. py:function:: write_summary(path, js, datasets, G, table, history, runs, stamp) The joint run as JSON: settings, datasets and their runs, shared U_g. :param path: Output file. :type path: Path :param js: Resolved settings. :type js: JointSettings :param datasets: `Dataset` objects, after the refinement. :type datasets: list :param G: Final joint tree. :type G: dict :param table: From `prepare`. :type table: dict :param history: Joint loss per step. :type history: list :param runs: Dataset name -> run key written to its file (or None). :type runs: dict :param stamp: The joint run's id. :type stamp: str :returns: Path