arbor/fvm_layout.cpp
// Axial current as linear combination of membrane voltages at reference points in adjacent CVs.
Axial current as linear combination of membrane voltages at reference points in adjacent CVs.
Axial current as linear combination of membrane voltages at reference points in adjacent CVs .
fvm_voltage_interpolant fvm_axial_current(const cable_cell& cell, const fvm_cv_discretization& D, fvm_size_type cell_idx, mlocation site) {
    auto& embedding = cell.embedding();
    fvm_voltage_interpolant vi;
    auto vrefs = fvm_voltage_reference_points(cell.morphology(), D.geometry, cell_idx, site);
    vi.proximal_cv = vrefs.proximal.cv;
    vi.distal_cv = vrefs.distal.cv;
    if (vi.proximal_cv==vi.distal_cv) {
        vi.proximal_coef = 0;
        vi.distal_coef = 0;
    }
    else {
        msize_t bid = site.branch;
        arb_assert(vrefs.proximal.loc.pos<vrefs.distal.loc.pos);
        mcable rr_span  = mcable{bid, vrefs.proximal.loc.pos , vrefs.distal.loc.pos};
        double rr_conductance = 100/embedding.integrate_ixa(rr_span, D.axial_resistivity[cell_idx].at(bid)); 
        vi.proximal_coef = -rr_conductance;
        vi.distal_coef = rr_conductance;
    }
    return vi;
}
fvm_voltage_interpolant fvm_axial_current ( const cable_cell & cell , const fvm_cv_discretization & D , fvm_size_type cell_idx , mlocation site ) { auto & embedding = cell . embedding ( ) ; fvm_voltage_interpolant vi ; auto vrefs = fvm_voltage_reference_points ( cell . morphology ( ) , D . geometry , cell_idx , site ) ; vi . proximal_cv = vrefs . proximal . cv ; vi . distal_cv = vrefs . distal . cv ; if ( vi . proximal_cv == vi . distal_cv ) { vi . proximal_coef = 0 ; vi . distal_coef = 0 ; } else { msize_t bid = site . branch ; arb_assert ( vrefs . proximal . loc . pos < vrefs . distal . loc . pos ) ; mcable rr_span = mcable { bid , vrefs . proximal . loc . pos , vrefs . distal . loc . pos } ; double rr_conductance = 100 / embedding . integrate_ixa ( rr_span , D . axial_resistivity [ cell_idx ] . at ( bid ) ) ; vi . proximal_coef = - rr_conductance ; vi . distal_coef = rr_conductance ; } return vi ; }
Axial current as linear combination of membrane voltages at reference points in adjacent CVs.
Axial current as linear combination of membrane voltages at reference points in adjacent CVs .
// [µS]