def _update_dprx(self):
super(ExpCM_fitprefs, self)._update_dprx()<EOL>j = <NUM_LIT:0><EOL>if '<STR_LIT>' in self.freeparams:<EOL><INDENT>self.dprx['<STR_LIT>'].fill(<NUM_LIT:0>)<EOL>for r in range(self.nsites):<EOL><INDENT>for i in range(N_AA - <NUM_LIT:1>):<EOL><INDENT>zetari = self.zeta[j]<EOL>for a in range(i, N_AA):<EOL><INDENT>delta_aAx = (CODON_TO_AA == a).astype('<STR_LIT:float>')<EOL>self.dprx['<STR_LIT>'][j][r] += (delta_aAx - (delta_aAx<EOL>* self.prx[r]).sum())/ (zetari - int(i == a))<EOL><DEDENT>self.dprx['<STR_LIT>'][j] *= self.prx[r]<EOL>j += <NUM_LIT:1><EOL><DEDENT><DEDENT><DEDENT>
Update `dprx`.