Search in sources :

Example 1 with VCellHelper

use of org.vcell.imagej.helper.VCellHelper in project vcell by virtualcell.

the class SmallCR method getSimulationCacheKey.

// public static void main(String[] args) {
// try {
// VCellHelper vh = new VCellHelper();
// ImageJ ij = new ImageJ();
// ij.ui().showUI();
// 
// ExampleDatasets exampleDatasets = openExample(ij, new File("C:\\Users\\frm\\VCellTrunkGitWorkspace2\\vcell\\vcell-imagej-helper")/*new File(System.getProperty("user.dir", "."))*/);
// int ANALYZE_BEGIN_TIMEINDEX = 3;
// int ANALYZE_END_TIMEINDEX = 8;
// int ANALYZE_COUNT = ANALYZE_END_TIMEINDEX - ANALYZE_BEGIN_TIMEINDEX +1;
// int xIndex = exampleDatasets.experimentalData.dimensionIndex(Axes.X);
// int xsize = (int)exampleDatasets.experimentalData.dimension(xIndex);
// int yIndex = exampleDatasets.experimentalData.dimensionIndex(Axes.Y);
// int ysize = (int)exampleDatasets.experimentalData.dimension(yIndex);
// FinalInterval analyzeOrigInterval = FinalInterval.createMinSize(new long[] {0,0,ANALYZE_BEGIN_TIMEINDEX, xsize,ysize,ANALYZE_COUNT});//xyzt:origin and xyzt:size
// int assumedZIndex = -1;
// for (int i = 0; i < exampleDatasets.segmentedGeom.numDimensions(); i++) {
// if(exampleDatasets.segmentedGeom.dimensionIndex(Axes.X)!=i && exampleDatasets.segmentedGeom.dimensionIndex(Axes.Y)!=i) {
// assumedZIndex = i;
// break;
// }
// }
// int zsize = (assumedZIndex == -1?1:(int)exampleDatasets.segmentedGeom.dimension(assumedZIndex));
// HashMap<Integer, String> segmentedGeomValuesMapSubvolumeName = new HashMap();
// segmentedGeomValuesMapSubvolumeName.put(0, "cyt");
// segmentedGeomValuesMapSubvolumeName.put(255, "Nuc");
// VCellHelper.IJGeom overrideGeom = createGeometry(exampleDatasets.segmentedGeom, xIndex, yIndex, assumedZIndex, xsize, ysize, zsize, segmentedGeomValuesMapSubvolumeName);
// double[] diffRates = new double[] {
// 1.25,
// 1.3,
// 1.4,
// 1.45,
// 1.5,
// 1.55,
// 1.6
// };
// double[] mse = new double[diffRates.length];
// for (int i = 0; i < diffRates.length; i++) {
// String simulationCacheKey = getSimulationCacheKey(vh);
// IJSolverStatus ijSolverStatus = runFrapSolver(vh, diffRates[i],simulationCacheKey,overrideGeom);
// String simulationDataCacheKey = waitForSolverGetCacheForData(vh, ijSolverStatus);
// SCIFIOImgPlus<DoubleType> annotatedZProjectedSimPostBleachData = zProjectNormalizeSimData(vh, "Sim Data "+diffRates[i], simulationDataCacheKey, "rf", 0, ijSolverStatus.getJobIndex(), ANALYZE_BEGIN_TIMEINDEX, ANALYZE_END_TIMEINDEX);
// showAndZoom(ij, "Sim Data "+diffRates[i], annotatedZProjectedSimPostBleachData, 4);
// mse[i] = calcMSE(ij, annotatedZProjectedSimPostBleachData,exampleDatasets,analyzeOrigInterval);
// }
// for(int i=0;i<mse.length;i++){
// System.out.println("diffRate="+diffRates[i]+" MSE="+(mse[i]));
// }
// 
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
public static String getSimulationCacheKey(VCellHelper vh) throws Exception {
    // User can search (with simple wildcard *=any) for VCell Model by:
    // model type {biomodel,mathmodel,quickrun}
    // user name
    // model name
    // application name (if searching for BioModels, not applicable for MathModels)
    // simulation name
    // version time range (all VCell Models saved on the VCell server have a last date 'saved')
    SimpleDateFormat easyDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    VCellHelper.VCellModelVersionTimeRange vcellModelVersionTimeRange = new VCellHelper.VCellModelVersionTimeRange(easyDate.parse("2018-06-01 00:00:00"), easyDate.parse("2018-08-01 00:00:00"));
    VCellHelper.VCellModelSearch search = new VCellHelper.VCellModelSearch(VCellHelper.ModelType.bm, "frm", "Tutorial_FRAPbinding", "Spatial", "FRAP binding", null, null);
    ArrayList<VCellModelSearchResults> vcellModelSearchResults = vh.getSearchedModelSimCacheKey(true, search, vcellModelVersionTimeRange);
    if (vcellModelSearchResults.size() != 1) {
        throw new Exception("Expecting only 1 model from search results");
    }
    String cacheKey = vcellModelSearchResults.get(0).getCacheKey();
    return cacheKey;
}
Also used : VCellModelSearchResults(org.vcell.imagej.helper.VCellHelper.VCellModelSearchResults) SimpleDateFormat(java.text.SimpleDateFormat) VCellHelper(org.vcell.imagej.helper.VCellHelper)

Aggregations

SimpleDateFormat (java.text.SimpleDateFormat)1 VCellHelper (org.vcell.imagej.helper.VCellHelper)1 VCellModelSearchResults (org.vcell.imagej.helper.VCellHelper.VCellModelSearchResults)1