Dear developers and users, My phenix.real_space_refine run crashes with the error mentioned below when I have used following command to run it on a complete ribosome (containing coordinates for small subunit and large subunit in a single pdb file): phenix.real_space_refine model.pdb map.mrc resolution=4.5 reference_coordinate_restraints.enabled=true reference_coordinate_restraints.selection="chain A and resseq 2:700" reference_coordinate_restraints.sigma=0.05 secondary_structure.enabled=True res.eff > out.out
From the out.out file I can see that, it ran for 5 macro_cycles and started group b-factor refinement which reads (last few lines):
|-----------------------------------------------------------------------------| |-group b-factor refinement (macro cycle = 0; iterations = 0)-----------------| | r_work = 0.3809 r_free = 0.3809 target = 0.153923 restraints weight = None | |-----------------------------------------------------------------------------| |-group b-factor refinement (macro cycle = 1; iterations = 32)----------------| | r_work = 0.3687 r_free = 0.3687 target = 0.144348 restraints weight = 1067.479| |-----------------------------------------------------------------------------| |-group b-factor refinement (macro cycle = 2; iterations = 37)----------------| | r_work = 0.3724 r_free = 0.3724 target = 0.147257 restraints weight = 482.176| |-----------------------------------------------------------------------------| |-group b-factor refinement (macro cycle = 3; iterations = 32)----------------| | r_work = 0.3747 r_free = 0.3747 target = 0.149066 restraints weight = 262.900| |-----------------------------------------------------------------------------| The run crashes at this point.... However, phenix.real_space_refine runs fine when I am refining a protein chain or a complex (for eg: just the large or the small subunit of a ribosome). Does it have to do with my pdb file being so big after merging of both subunits where I have also crossed 99999 atoms and atom serial numbers start from A0000? A related question: What is the latest consensus of using chain IDs and atom serial numbers to use in phenix.real_space_refine for handling large files like ribosome pdbs ? I have found some information on: http://cci.lbl.gov/hybrid_36/ The error in terminal reads: Traceback (most recent call last): File "/usr/local/phenix-1.11.1-2575/build/../modules/phenix/phenix/command_line/real_space_refine.py", line 782, in <module> o = run(sys.argv[1:]) File "/usr/local/phenix-1.11.1-2575/build/../modules/phenix/phenix/command_line/real_space_refine.py", line 518, in __init__ self.caller(func = self.run_macro_cycles, prefix="Macro-cycles") File "/usr/local/phenix-1.11.1-2575/build/../modules/phenix/phenix/command_line/real_space_refine.py", line 547, in caller status = func(prefix=prefix, **kwargs) File "/usr/local/phenix-1.11.1-2575/build/../modules/phenix/phenix/command_line/real_space_refine.py", line 540, in run_macro_cycles log = self.log) File "/usr/local/phenix-1.11.1-2575/modules/phenix/phenix/refinement/macro_cycle_real_space.py", line 66, in __init__ self.caller(self.refine_adp, "ADP refinement") File "/usr/local/phenix-1.11.1-2575/modules/phenix/phenix/refinement/macro_cycle_real_space.py", line 71, in caller status = func(prefix=prefix) File "/usr/local/phenix-1.11.1-2575/modules/phenix/phenix/refinement/macro_cycle_real_space.py", line 317, in refine_adp adp_refinery.refine() File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/refinement/real_space/adp.py", line 78, in refine b_isos_refined = self.refine_box_with_selected(selection=sel) File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/refinement/real_space/adp.py", line 56, in refine_box_with_selected fmodel.update_all_scales(update_f_part1=False, apply_back_trace=True) File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 1452, in update_all_scales self.apply_scale_k1_to_f_obs() File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 1500, in apply_scale_k1_to_f_obs r_start = self.r_work() File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 2004, in r_work selection = selection) File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 1972, in _r_factor f_model = self.f_model_scaled_with_k1_w().data() File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 1730, in f_model_scaled_with_k1_w data = self.scale_k1_w()*self.f_model_work().data()) File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 2048, in scale_k1_w selection=selection) File "/usr/local/phenix-1.11.1-2575/modules/cctbx_project/mmtbx/f_model/f_model.py", line 182, in _scale_helper raise RuntimeError("Zero denominator in scale calculation.") RuntimeError: Zero denominator in scale calculation. Best regards, Tofayel