Search in sources :

Example 1 with SpatialAnalysisResults

use of cbit.vcell.microscopy.SpatialAnalysisResults in project vcell by virtualcell.

the class EstParams_OneDiffComponentPanel method setData.

public void setData(final FRAPOptData frapOptData, final FRAPData fData, Parameter[] modelParams, final double[] frapDataTimeStamps, int startIndexForRecovery, boolean[] selectedROIs) throws Exception {
    this.frapOptData = frapOptData;
    double[] prebleachAverage = FrapDataUtils.calculatePreBleachAverageXYZ(fData, startIndexForRecovery);
    spatialAnalysisResults = FRAPStudy.spatialAnalysis(null, startIndexForRecovery, frapDataTimeStamps[startIndexForRecovery], modelParams, fData, prebleachAverage);
    // allDataHash use AnalysisParameters as key, the value is dataSource[] which should have length as 2: expDataSource & simDataSouce
    allDataHash = spatialAnalysisResults.createSummaryReportSourceData(frapDataTimeStamps, startIndexForRecovery, selectedROIs, false);
    final SpatialAnalysisResults finalSpatialAnalysisResults = spatialAnalysisResults;
    try {
        getPureDiffusionPanel().setData(frapOptData, modelParams);
        multisourcePlotPane.forceXYRange(new Range(frapDataTimeStamps[0], frapDataTimeStamps[frapDataTimeStamps.length - 1]), new Range(0, 1.5));
        plotDerivedSimulationResults(finalSpatialAnalysisResults.getAnalysisParameters());
    } catch (Exception e) {
        throw new RuntimeException("Error setting data to result panel for diffusion with one diffusing component.");
    }
}
Also used : SpatialAnalysisResults(cbit.vcell.microscopy.SpatialAnalysisResults) Range(org.vcell.util.Range)

Example 2 with SpatialAnalysisResults

use of cbit.vcell.microscopy.SpatialAnalysisResults in project vcell by virtualcell.

the class EstParams_ReacBindingPanel method setData.

// private void showPopupMenu(MouseEvent e){
// if(B_TABLE_DISABLED){
// return;
// }
// if(e.isPopupTrigger()){
// if(table.getSelectedRow() < 0 || table.getSelectedRow() >= summaryData.length||
// table.getSelectedColumn() < 0 || table.getSelectedColumn() >= summaryReportColumnNames.length){
// copyValueJMenuItem.setEnabled(false);
// copyTimeDataJMenuItem.setEnabled(false);
// }else{
// copyValueJMenuItem.setEnabled(true);
// copyTimeDataJMenuItem.setEnabled(true);
// }
// if(copyTimeDataJMenuItem.isEnabled() && table.getSelectedColumn() == 0){
// copyTimeDataJMenuItem.setEnabled(false);
// }
// jPopupMenu.show((Component)e.getSource(), e.getX(), e.getY());
// }
// 
// }
// private void sortColumn(final int columnIndex,boolean bAutoReverse){
// if(B_TABLE_DISABLED){
// return;
// }
// if(summaryData != null){
// int selectedRow = table.getSelectedRow();
// int[] selectedColumns = table.getSelectedColumns();
// Object[][] sortedObjects = new Object[summaryData.length][];
// for (int i = 0; i < sortedObjects.length; i++) {
// sortedObjects[i] = new Object[] {new Integer(i),(Double)summaryData[i][columnIndex]};
// }
// Arrays.sort(sortedObjects,
// new Comparator<Object[]> (){
// public int compare(Object[] o1,Object[] o2) {
// return (int)Math.signum((Double)o1[1] - (Double)o2[1]);
// }
// }
// );
// if(bAutoReverse){
// boolean bSortOrderChanged = false;
// for (int i = 0; i < sortedObjects.length; i++) {
// if((Integer)(((Object[])sortedObjects[i])[0]) != i){
// bSortOrderChanged = true;
// break;
// }
// }
// if(!bSortOrderChanged){
// Object[][] reverseSort = new Object[sortedObjects.length][];
// for (int i = 0; i < reverseSort.length; i++) {
// reverseSort[i] = sortedObjects[sortedObjects.length-1-i];
// }
// sortedObjects = reverseSort;
// }
// }
// Object[][] summaryCopy = new Object[summaryData.length][];
// for (int i = 0; i < sortedObjects.length; i++) {
// summaryCopy[i] = summaryData[(Integer)(((Object[])sortedObjects[i])[0])];
// }
// table.setModel(getTableModel(summaryReportColumnNames,summaryCopy));
// if(selectedRow != -1){
// for (int i = 0; i < sortedObjects.length; i++) {
// if((Integer)(((Object[])sortedObjects[i])[0]) == selectedRow){
// selectedRow = i;//table.getSelectionModel().setSelectionInterval(i, i);
// break;
// }
// }
// 
// }
// if(selectedColumns != null && selectedColumns.length > 0){
// setTableCellSelection(selectedRow, selectedColumns);
// }
// }
// }
// private void processTableSelection(){
// if(allDataHash == null || B_TABLE_DISABLED){
// return;
// }
// int selectedRow = table.getSelectedRow();
// int[] selectedColumns = table.getSelectedColumns();
// if(selectedRow != -1 && selectedColumns != null && selectedColumns.length > 0){
// Double selectedDiffusionRate =
// (Double)table.getValueAt(selectedRow,
// FRAPStudy.SpatialAnalysisResults.COLUMN_INDEX_DIFFUSION_RATE);
// DataSource[] selectedRowDataSourceArr = allDataHash.get(selectedDiffusionRate);
// multisourcePlotPane.setDataSources(selectedRowDataSourceArr);
// multisourcePlotPane.clearSelection();
// Vector<String> dataSourceColumnNamesV = new Vector<String>();
// for (int i = 0; i < selectedColumns.length; i++) {
// int selectedColumn = selectedColumns[i];
// if(selectedColumn < FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT/*== FRAPStudy.SpatialAnalysisResults.COLUMN_INDEX_DIFFUSION_RATE*/){
// multisourcePlotPane.selectAll();
// dataSourceColumnNamesV = null;
// break;
// }else{
// String expColName =
// ((ReferenceData)selectedRowDataSourceArr[FRAPStudy.SpatialAnalysisResults.ARRAY_INDEX_EXPDATASOURCE].getSource()).getColumnNames()[selectedColumn-FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT+1];
// String simColName =
// ((ODESolverResultSet)selectedRowDataSourceArr[FRAPStudy.SpatialAnalysisResults.ARRAY_INDEX_SIMDATASOURCE].getSource()).getColumnDescriptions()[selectedColumn-FRAPStudy.SpatialAnalysisResults.ANALYSISPARAMETERS_COLUMNS_COUNT+1].getName();
// dataSourceColumnNamesV.add(expColName);
// dataSourceColumnNamesV.add(simColName);
// }
// }
// if(dataSourceColumnNamesV != null && dataSourceColumnNamesV.size() > 0){
// String[] dataSourceColumnNamesArr = dataSourceColumnNamesV.toArray(new String[0]);
// multisourcePlotPane.select(dataSourceColumnNamesArr);
// }
// }else{
// multisourcePlotPane.setDataSources(null);
// }
// 
// }
public void setData(final FRAPData fData, Parameter[] modelParams, final double[] frapDataTimeStamps, int startIndexForRecovery, boolean[] selectedROIs) throws Exception {
    double[] prebleachAverage = FrapDataUtils.calculatePreBleachAverageXYZ(fData, startIndexForRecovery);
    spatialAnalysisResults = FRAPStudy.spatialAnalysis(null, startIndexForRecovery, frapDataTimeStamps[startIndexForRecovery], modelParams, fData, prebleachAverage);
    // allDataHash use AnalysisParameters as key, the value is dataSource[] which should have length as 2: expDataSource & simDataSouce
    allDataHash = spatialAnalysisResults.createSummaryReportSourceData(frapDataTimeStamps, startIndexForRecovery, selectedROIs, false);
    final SpatialAnalysisResults finalSpatialAnalysisResults = spatialAnalysisResults;
    try {
        multisourcePlotPane.forceXYRange(new Range(frapDataTimeStamps[0], frapDataTimeStamps[frapDataTimeStamps.length - 1]), new Range(0, 1.5));
        plotDerivedSimulationResults(finalSpatialAnalysisResults.getAnalysisParameters());
    } catch (Exception e) {
        throw new RuntimeException("Error setting data to result panel for diffusion with one diffusing component.");
    }
}
Also used : SpatialAnalysisResults(cbit.vcell.microscopy.SpatialAnalysisResults) Range(org.vcell.util.Range)

Example 3 with SpatialAnalysisResults

use of cbit.vcell.microscopy.SpatialAnalysisResults in project vcell by virtualcell.

the class EstParams_TwoDiffComponentPanel method setData.

public void setData(final FRAPOptData frapOptData, final FRAPData fData, Parameter[] modelParams, final double[] frapDataTimeStamps, int startIndexForRecovery, boolean[] selectedROIs) throws Exception {
    this.frapOptData = frapOptData;
    double[] prebleachAverage = FrapDataUtils.calculatePreBleachAverageXYZ(fData, startIndexForRecovery);
    spatialAnalysisResults = FRAPStudy.spatialAnalysis(null, startIndexForRecovery, frapDataTimeStamps[startIndexForRecovery], modelParams, fData, prebleachAverage);
    // allDataHash use AnalysisParameters as key, the value is dataSource[] which should have length as 2: expDataSource & simDataSouce
    allDataHash = spatialAnalysisResults.createSummaryReportSourceData(frapDataTimeStamps, startIndexForRecovery, selectedROIs, false);
    final SpatialAnalysisResults finalSpatialAnalysisResults = spatialAnalysisResults;
    try {
        getPureDiffusionPanel().setData(frapOptData, modelParams);
        multisourcePlotPane.forceXYRange(new Range(frapDataTimeStamps[0], frapDataTimeStamps[frapDataTimeStamps.length - 1]), new Range(0, 1.5));
        plotDerivedSimulationResults(finalSpatialAnalysisResults.getAnalysisParameters());
    } catch (Exception e) {
        throw new RuntimeException("Error setting data to result panel for diffusion with one diffusing component.");
    }
}
Also used : SpatialAnalysisResults(cbit.vcell.microscopy.SpatialAnalysisResults) Range(org.vcell.util.Range)

Aggregations

SpatialAnalysisResults (cbit.vcell.microscopy.SpatialAnalysisResults)3 Range (org.vcell.util.Range)3