For complex input files it can be difficult to track which prms feed into individual objects. For example in a distortion mode or rigid body refinement what feeds into e.g. the x coordinate of a given site. The command below helps. N.B. it may soon change its name to “out_dependences_for”.
out_dependents_for $user_string $object_name
The idea is to tag objects and to then output independent parameters associated with the tagged object. For example, in a rigid body:
rigid point_for_site Zr_1 ua = Zr_1_x; ub = Zr_1_y; uc = Zr_1_z; point_for_site O1_1 ua = O1_1_x; ub = O1_1_y; uc = O1_1_z; point_for_site O1_2 ua = O1_2_x; ub = O1_2_y; uc = O1_2_z; point_for_site O1_3 ua = O1_3_x; ub = O1_3_y; uc = O1_3_z; Rotate_about_points( =Zr_1_angdeg;, Zr_1, Q_Zr_1) out_dependents_for tag_1 rigid
we get in the standard output (i.e. the fit window) a list of independent refined parameters associated with the rigid body; ie.
out_dependents_for tag_1 rigid Object name followed by prm name prm_10 a4 prm_10 a5 prm_10 a6 prm_10 bnr1 prm_10 bnr2 prm_10 bnr3 prm_10 r3 prm_10 r2 prm_10 r1
Note, the object tagged in this case is the rigid body defined just before out_dependents_for.
There are many $object_name’s that are valid. Basically all parameters can be tagged, e.g.
x, y, z, occ, beq, u11, u22, u33, u12, u13m u23, a, b, c, al, be, ga, etc…
In addition the following non-parameters can be tagged:
site, rigid, sites_restrain, lat_prms, gauss_conv, lor_conv, all_scale_pks, th2_offset_eqn
out_dependents_for works for ‘prm’ and ‘local’. Thus, if we had:
prm O1_3_dy = + 0.02473*a4 + 0.01749*a5 - 0.03029*a6;: 0.58861` out_dependents_for O1_3_dy prm
Then the output would be:
out_dependents_for O1_3_dy prm Object name followed by prm name prm_10 a4 prm_10 a5 prm_10 a6