コード例 #1
0
    def test_scale_measurement(self):
        self.assert_measurement_equal(self.transformed_small,
                measurements.scale(self.small_measurement, self.factor))

        self.assert_measurement_equal(self.transformed_medium,
                measurements.scale(self.medium_measurement, self.factor))

        self.assert_measurement_equal(self.transformed_large,
                measurements.scale(self.large_measurement, self.factor))
コード例 #2
0
    def test_scale_measurement(self):
        self.assert_measurement_equal(
            self.transformed_small,
            measurements.scale(self.small_measurement, self.factor))

        self.assert_measurement_equal(
            self.transformed_medium,
            measurements.scale(self.medium_measurement, self.factor))

        self.assert_measurement_equal(
            self.transformed_large,
            measurements.scale(self.large_measurement, self.factor))
コード例 #3
0
    def perform(self, run, target):
        log.debug('Performing SimpleDataFit of %s.', self.measurement_name)
        sim_result = run.analyses[self.measurement_name]
        data = run.experiment.objectives[self.label].measurement
        sim_result = _measurements.skip_beginning(sim_result,
                                                  self.skip_beginning)
        sim_result = _measurements.scale(sim_result, self.scale_simulation_by)

        if self.interpolate_simulation:
            interp = _interpolation.resample_measurement(sim_result, data[0])

            #            log.debug('interp times: %s', interp[0])
            log.debug('Sim  values: %s', interp[1])
            log.debug('Data values: %s', data[1])

            target.value = self.residual_function(interp, data)
        else:
            target.value = self.residual_function(sim_result, data)

            log.debug('Sim  values: %s', sim_result[1])
            log.debug('Data values: %s', data[1])
        log.debug('Objective value: %s.', target.value)

        if target.value <= 0:
            log.warn('Negative or zero residual found %s.', target.value)
コード例 #4
0
    def perform(self, run, target):
        log.debug('Performing SimpleDataFit of %s.', self.measurement_name)
        sim_result = run.analyses[self.measurement_name]
        data = run.experiment.objectives[self.label].measurement
        sim_result = _measurements.skip_beginning(sim_result,
                self.skip_beginning)
        sim_result = _measurements.scale(sim_result, self.scale_simulation_by)

        if self.interpolate_simulation:
            interp = _interpolation.resample_measurement(sim_result, data[0])

#            log.debug('interp times: %s', interp[0])
            log.debug('Sim  values: %s', interp[1])
            log.debug('Data values: %s', data[1])

            target.value = self.residual_function(interp, data)
        else:
            target.value = self.residual_function(sim_result, data)

            log.debug('Sim  values: %s', sim_result[1])
            log.debug('Data values: %s', data[1])
        log.debug('Objective value: %s.', target.value)

        if target.value <= 0:
            log.warn('Negative or zero residual found %s.', target.value)
コード例 #5
0
def timecourse(db_session, session_id, experiment_index=0, run_index=0,
        filename='results/short_time.dat'):
    session = db_session.query(database.Session).get(session_id)
    run = session.experiments[experiment_index].runs[run_index]

    ftc = run.all_parameters['filament_tip_concentration']
    seed_concentration = run.all_parameters['seed_concentration']

    length_data = run.analyses['length']
    # convert to  [factin]
#    factin_data = measurements.scale(length_data, ftc)
    factin_data = measurements.add_number(measurements.scale(length_data, ftc),
            -seed_concentration)

#    pi_random_data = run.analyses['Pi_random']
#    pi_vectorial_data = run.analyses['Pi_vectorial']
    pi_data = run.analyses['Pi']

    combined_data = _combine_timecourse_data(factin_data,
#            pi_random_data, pi_vectorial_data,
            pi_data)

    _write_results(filename, combined_data,
            'Time (s)', 'Concentration (uM)', 'Data',
            ['[F-actin]',
#                '[Pi_random]', '[Pi_vectorial]',
                '[Pi_other]'])
コード例 #6
0
    def fit_measurement(self, run, data):
        unnormalized_measurement = self.unnormalized_measurement(run)

        fit, norm = _pyrene_normalization(unnormalized_measurement, data,
                                          self.residual_function)
        measurement = _measurements.scale(unnormalized_measurement, norm)

        return fit, measurement
コード例 #7
0
def timecourse(db_session,
               session_id,
               experiment_index=0,
               run_index=0,
               filename='results/short_time.dat'):
    session = db_session.query(database.Session).get(session_id)
    run = session.experiments[experiment_index].runs[run_index]

    ftc = run.all_parameters['filament_tip_concentration']
    seed_concentration = run.all_parameters['seed_concentration']

    length_data = run.analyses['length']
    # convert to  [factin]
    #    factin_data = measurements.scale(length_data, ftc)
    factin_data = measurements.add_number(measurements.scale(length_data, ftc),
                                          -seed_concentration)

    #    pi_random_data = run.analyses['Pi_random']
    #    pi_vectorial_data = run.analyses['Pi_vectorial']
    pi_data = run.analyses['Pi']

    combined_data = _combine_timecourse_data(
        factin_data,
        #            pi_random_data, pi_vectorial_data,
        pi_data)

    _write_results(
        filename,
        combined_data,
        'Time (s)',
        'Concentration (uM)',
        'Data',
        [
            '[F-actin]',
            #                '[Pi_random]', '[Pi_vectorial]',
            '[Pi_other]'
        ])
コード例 #8
0
    def model_function(normalization):
        scaled_sim = _measurements.scale(fluorescence_sim, normalization[0])

        return residual_function(fluorescence_data, scaled_sim)
コード例 #9
0
 def unnormalized_measurement(self, run):
     analyses = run.analyses
     measurements = []
     for name, weight in self.weights.iteritems():
         measurements.append(_measurements.scale(analyses[name], weight))
     return _measurements.add(measurements)