1 #ifndef LOCARNA_MCC_MATRICES_HH
2 #define LOCARNA_MCC_MATRICES_HH
13 #include <ViennaRNA/params.h>
18 class MultipleAlignment;
32 iidx(
size_t i,
size_t j)
const {
35 assert(j <= vc_->length);
37 return vc_->iindx[i] - j;
43 jidx(
size_t i,
size_t j)
const {
46 assert(j <= vc_->length);
48 return vc_->jindx[j] + i;
60 bppm(
size_t i,
size_t j)
const {
61 return vc_->exp_matrices->probs[
iidx(i, j)];
73 qb(
size_t i,
size_t j)
const {
74 return vc_->exp_matrices->qb[
iidx(i, j)];
86 qm(
size_t i,
size_t j)
const {
87 return vc_->exp_matrices->qm[
iidx(i, j)];
95 return vc_->exp_params;
105 return vc_->exp_matrices->scale[i];
115 return vc_->exp_matrices->expMLbase[i];
124 return vc_->exp_params->kT;
136 return vc_->exp_matrices->q1k[k];
148 return vc_->exp_matrices->qln[l];
160 pair(
size_t c,
size_t d)
const {
162 assert(
vc_->exp_params);
163 return vc_->exp_params->model_details.pair[c][d];
167 rtype(
size_t x)
const {
169 assert(
vc_->exp_params);
170 return vc_->exp_params->model_details.rtype[x];
173 vrna_fold_compound_t *vc() {
return vc_;}
188 vrna_fold_compound_t*
vc_;
240 return vc_->exp_params->model_details.rtype[(size_t)
ptype(i, j)];
252 return vc_->sequence_encoding[i];
257 return vc_->sequence;
288 return vc_->pscore[
jidx(i, j)];
300 S(
size_t s,
size_t i)
const {
314 S3(
size_t s,
size_t i)
const {
316 return vc_->S3[s][i];
328 S5(
size_t s,
size_t i)
const {
330 return vc_->S5[s][i];
342 a2s(
size_t s,
size_t i)
const {
343 return vc_->a2s[s][i];
Alifold-McCaskill matrices.
Definition: mcc_matrices.hh:263
short S(size_t s, size_t i) const
Read access to sequence encoding S.
Definition: mcc_matrices.hh:300
virtual ~McC_ali_matrices_t()
destruct
Definition: mcc_matrices.cc:77
short a2s(size_t s, size_t i) const
Read access to a2s.
Definition: mcc_matrices.hh:342
short S3(size_t s, size_t i) const
Read access to sequence encoding S3.
Definition: mcc_matrices.hh:314
short S5(size_t s, size_t i) const
Read access to sequence encoding S5.
Definition: mcc_matrices.hh:328
short pscore(size_t i, size_t j) const
Access matrix pscore.
Definition: mcc_matrices.hh:287
McC_ali_matrices_t(const MultipleAlignment &ma, const PFoldParams ¶ms)
Construct from multiple alignment.
Definition: mcc_matrices.cc:54
Definition: mcc_matrices.hh:20
McC_matrices_base(vrna_fold_compound_t *vc=nullptr)
construct with fold compound
Definition: mcc_matrices.cc:27
vrna_fold_compound_t * vc_
vrna fold compound The fold compound holds the DP matrices, input and model details.
Definition: mcc_matrices.hh:188
vrna_exp_param_t * exp_params() const
exp params
Definition: mcc_matrices.hh:94
FLT_OR_DBL expMLbase(size_t i) const
expMLbase
Definition: mcc_matrices.hh:114
size_t jidx(size_t i, size_t j) const
index in triagonal matrix
Definition: mcc_matrices.hh:43
FLT_OR_DBL qb(size_t i, size_t j) const
Read access matrix qb.
Definition: mcc_matrices.hh:73
FLT_OR_DBL q1k(size_t k) const
Read access matrix q1k.
Definition: mcc_matrices.hh:135
virtual ~McC_matrices_base()
Destructor.
Definition: mcc_matrices.cc:28
int pair(size_t c, size_t d) const
Read access matrix pair.
Definition: mcc_matrices.hh:160
FLT_OR_DBL qm(size_t i, size_t j) const
Read access matrix qm.
Definition: mcc_matrices.hh:86
FLT_OR_DBL qln(size_t l) const
Read access matrix qln.
Definition: mcc_matrices.hh:147
FLT_OR_DBL scale(size_t i) const
scale
Definition: mcc_matrices.hh:104
FLT_OR_DBL kT() const
kT
Definition: mcc_matrices.hh:123
size_t iidx(size_t i, size_t j) const
index in triagonal matrix
Definition: mcc_matrices.hh:32
FLT_OR_DBL bppm(size_t i, size_t j) const
Read access matrix bppm.
Definition: mcc_matrices.hh:60
McCaskill matrices.
Definition: mcc_matrices.hh:202
virtual ~McC_matrices_t()
destruct, optionally free local copy
Definition: mcc_matrices.cc:51
char ptype(size_t i, size_t j) const
Access matrix ptype.
Definition: mcc_matrices.hh:226
char rev_ptype(size_t i, size_t j) const
Reverse ptype.
Definition: mcc_matrices.hh:239
McC_matrices_t(const MultipleAlignment &sequence, const PFoldParams ¶ms)
Construct from sequence.
Definition: mcc_matrices.cc:34
short S1(size_t i) const
Read access to sequence encoding S1.
Definition: mcc_matrices.hh:251
Represents a multiple alignment.
Definition: multiple_alignment.hh:65
Parameters for partition folding.
Definition: pfold_params.hh:32
Definition: aligner.cc:15
double FLT_OR_DBL
select FLT_OR_DBL
Definition: aux.hh:291