goAnalysisRecur

PURPOSE ^

This script analyze C. Elegans neural network, Drosophila's cnetral complex

SYNOPSIS ^

This is a script file.

DESCRIPTION ^

 This script analyze C. Elegans neural network, Drosophila's cnetral complex
 neural network, and several theoretical networks generated based on C. Elegans
 neural network.
 NOTE: Due to count number of new nodes, this script may take several hours
 to analysis.

 The standard process of analysis:
 # load neural network
 # analyse neural network
 # create theoretical networks based on the loaded neural network
 # analyse theoretical networks
 # compute the average of realisation results

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 % This script analyze C. Elegans neural network, Drosophila's cnetral complex
0002 % neural network, and several theoretical networks generated based on C. Elegans
0003 % neural network.
0004 % NOTE: Due to count number of new nodes, this script may take several hours
0005 % to analysis.
0006 %
0007 % The standard process of analysis:
0008 % # load neural network
0009 % # analyse neural network
0010 % # create theoretical networks based on the loaded neural network
0011 % # analyse theoretical networks
0012 % # compute the average of realisation results
0013 
0014 %   ---------
0015 %   Yen-Nan Lin, NTHU, 2010-2014, Matlab 2012a
0016 
0017 close all;
0018 clear all;
0019 goIncludeToolbox;
0020 
0021 % parameter for analysis
0022 parameter.MAX_LEVEL = 8;
0023 parameter.REPEAT_TIMES = 100;
0024 parameter.STRIDE_SEED_NUMBER = 10000;
0025 parameter.REWIRE_PROB_RING = 0.3;
0026 parameter.ANALYZE_RECURRENT = true;
0027 
0028 % load parameter struct into base workspace
0029 loadStruct(parameter, 'base');
0030 
0031 % C. Elegans network analysis
0032 ceNetwork = bioNetwork('./CE_ExpData/C_elegans_Matrix.mat', 'mat');
0033 ceNetwork = readLabel(ceNetwork, './CE_ExpData/C_elegans_Label.txt');
0034 ceNetwork = setIO(ceNetwork, ceNetwork.inputList, ceNetwork.outputList);
0035 rand('seed', 0);
0036 ceNetwork = levelAnalysis(ceNetwork, MAX_LEVEL, ANALYZE_RECURRENT);
0037 
0038 
0039 % compute number of edges information of ceNetwork
0040 ceNetwork.NumConnect = full(sum(sum(ceNetwork.matrix)));
0041 ceNetwork.meanNumEdge = full(mean(sum(ceNetwork.matrix')));
0042 
0043 % generate theoretical networks based on C. Elegans neural network
0044 % and analyze the networks
0045 % random network analysis
0046 randProb = ceNetwork.NumConnect / (ceNetwork.size^2 - ceNetwork.size);
0047 randNetwork = cell(1, REPEAT_TIMES);
0048 for iTime = 1:REPEAT_TIMES
0049     seedNumber = iTime * STRIDE_SEED_NUMBER;
0050     randNetwork{iTime} = randomNetwork(ceNetwork.size, randProb, seedNumber);
0051     randNetwork{iTime} = setIO(randNetwork{iTime}, ...
0052         ceNetwork.inputNumber, ceNetwork.outputNumber);
0053     randNetwork{iTime} = ...
0054         levelAnalysis(randNetwork{iTime}, MAX_LEVEL, ANALYZE_RECURRENT);
0055 end
0056 % compute mean result of analysis
0057 meanRandNet = meanFieldInCells(randNetwork);
0058 stdRandNet = stdFieldInCells(randNetwork);
0059 
0060 % ring type small world network analysis
0061 smallRingNet = cell(1, REPEAT_TIMES);
0062 for iTime = 1:REPEAT_TIMES
0063     seedNumber = iTime * STRIDE_SEED_NUMBER;
0064     smallRingNet{iTime} = smallWorldNetwork(ceNetwork.size, ...
0065         REWIRE_PROB_RING, seedNumber, ceNetwork.meanNumEdge);
0066     smallRingNet{iTime} = setIO(smallRingNet{iTime}, ...
0067         ceNetwork.inputNumber, ceNetwork.outputNumber);
0068     smallRingNet{iTime} = ...
0069         levelAnalysis(smallRingNet{iTime}, MAX_LEVEL, ANALYZE_RECURRENT);
0070 end
0071 % compute mean result of analysis
0072 meanRingNet = meanFieldInCells(smallRingNet);
0073 stdRingNet = stdFieldInCells(smallRingNet);
0074 
0075 % central complex network analysis
0076 cxNetwork = bioNetwork('./PcbExpData/CXGraph_AllRevised.mat', 'mat');
0077 cxNetwork = readLabel(cxNetwork, './PcbExpData/CXLabel_AllRevised.txt');
0078 cxNetwork = setIO(cxNetwork, cxNetwork.inputList, cxNetwork.outputList);
0079 rand('seed', 0);
0080 cxNetwork = levelAnalysis(cxNetwork, MAX_LEVEL, ANALYZE_RECURRENT);

Generated on Thu 30-Jan-2014 00:00:07 by m2html © 2005