Damping_ratioyears11[1987, 1988, 1989, 1990, 1991, 1992]2014-06-25 12:56:26.521 UTCYears: The year of each matrix. In the following example, we have six matrices, so six years.2014-06-25 12:55:45.575 UTCgraph_title00Gentiana pneumonanthe, Terschelling2014-06-25 12:51:38.277 UTCDescriptive title for labelling generated output graph.2014-06-25 12:51:25.933 UTCstages11[S, J, V, G, D]2014-06-25 12:53:10.821 UTCStages: the names of the stages or categories of the input matrix. In the following example, the matrix has 5 stages or categories. The respective name stages must be filled one by one. First click Add Value, fill a stage name (not longer than 8 characters) and press Enter; then click Add Value and fill once again the next stage name, repeat the action until you have fill all the stages names.
In the following example, the matrix has 5 stages or categories:
The stages of this matrix are called:
1) Seedlings S
2) Juveniles J
3) Vegetative V
4) Reproductive individuals G
5) Dormant plants D2014-06-25 12:53:02.240 UTCdamping_ratio_graph0damping_ratio_table0damping_ratiotitle0years1matrices1damping_ratio_graph00drlistyears11net.sf.taverna.t2.activitiesrshell-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.rshell.RshellActivitymatrices1falsetitle0falseyears1falsedamping_ratio_graph00drlistyears11falselocalhost6311falsefalsematricesR_EXPtitleSTRINGyearsSTRING_LISTdamping_ratio_graphPNG_FILEdrlistyearsR_EXPnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeRequestStageMatricestitle0field0values_L1multiple0matrices_LL22net.sf.taverna.t2.activitiesdataflow-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeYearvalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.stringconstant.StringConstantActivityYearnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invokemultiplevalue00net.sf.taverna.t2.activitiesstringconstant-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.stringconstant.StringConstantActivityfalsenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeFlatten_Listinputlist2outputlist11net.sf.taverna.t2.activitieslocalworker-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.localworker.LocalworkerActivityinputlist2l(l(''))[Btrueoutputlist1l('')1workfloworg.embl.ebi.escience.scuflworkers.java.FlattenListnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeReadStageMatrixmatrix_file0labels_L1matrix_Rn211net.sf.taverna.t2.activitiesdataflow-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Loopnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeConvert_LRn2_to_RLn2list_of_r_expressions2r_list_of_expressions11net.sf.taverna.t2.activitiesdataflow-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeOutputFundamentalMatrix_3input1output00net.sf.taverna.t2.activitiesdataflow-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.dataflow.DataflowActivitynet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invokedamping_ratiotitledamping_ratioyearsdamping_ratiomatricesRequestStageMatricestitleRequestStageMatricesfieldRequestStageMatricesvalues_LRequestStageMatricesmultipleFlatten_ListinputlistReadStageMatrixmatrix_fileReadStageMatrixlabels_LConvert_LRn2_to_RLn2list_of_r_expressionsOutputFundamentalMatrix_3inputdamping_ratio_graphdamping_ratio_table8dc0f1b4-bcad-4594-bc58-d0d42be427922014-06-25 12:50:43.426 UTCThe Damping ratio Workflow provides an environment to calculate the damping ratio of several matrices and plot them.
The damping ratio can be considered as a measure of the intrinsic resilience of the population, describing how quickly transient dynamics decay following disturbance or perturbation regardless of population structure, the larger the p, the quicker the population converges.
=============================================================
This workflow requires an instance of Rserve on localhost
This workflow has been created by the Biodiversity Virtual e-Laboratory (BioVeL http://www.biovel.eu/) project. BioVeL is funded by the EU’s Seventh Framework Program, grant no. 283359.
This workflow uses R packages ‘popbio’ (Stubben & Milligan 2007; Stubben, Milligan & Nantel 2011) and 'popdemo' (Stott, Hodgson and Townley 2013).
References:
Caswell, H. 2001. Matrix population models: Construction, analysis and interpretation, 2nd Edition. Sinauer Associates, Sunderland, Massachusetts.
Jongejans E. & H. de Kroon. 2012. Matrix models. Chapter in Encyclopaedia of Theoretical Ecology (eds. Hastings A & Gross L) University of California, p415-423
Oostermeijer J.G.B., M.L. Brugman; E.R. de Boer; H.C.M. Den Nijs. 1996. Temporal and Spatial Variation in the Demography of Gentiana pneumonanthe, a Rare Perennial Herb. The Journal of Ecology, Vol. 84(2): 153-166.
Stubben, C & B. Milligan. 2007. Estimating and Analysing Demographic Models Using the popbio Package in R. Journal of Statistical Software 22 (11): 1-23
Stubben, C., B. Milligan, P. Nantel. 2011. Package ‘popbio’. Construction and analysis of matrix population models. Version 2.3.12014-06-25 12:50:43.256 UTCDamping ratio2014-06-25 12:45:17.442 UTCf3491881-494e-4346-b67d-54336bacbec02014-06-19 13:19:53.396 UTC09212516-13d7-47e6-a280-fc7bd44894e92014-06-11 12:26:06.980 UTCMaria Paula Balcázar-Vargas, Mikolaj Krzyzanowski, Jonathan Giddy and Gerard Oostermeijer 2014-06-25 12:45:03.579 UTC5603bb10-502d-40b2-a5be-b5f007f2b39b2014-06-19 13:31:14.375 UTCdf2f7216-f2da-436b-bdd0-65694dac15b22014-06-19 13:30:26.610 UTC7a0403ae-da47-494b-88fa-b263544bc0ea2014-06-19 13:29:30.260 UTC59a0c665-5105-48de-af87-1f06413431372014-06-25 12:53:10.991 UTC9e4b0021-acb3-4e04-881d-eba92e563fdf2014-06-25 12:52:10.330 UTCcfc87b27-4871-4cc9-8097-ae00afb593f92014-06-19 13:22:58.517 UTCc97c5ef2-75da-44fc-800c-846992312eeb2014-06-19 13:22:19.918 UTC501fba4c-8f06-4c0f-b4f5-21a9f0264c452014-06-25 12:56:26.661 UTCc0e69318-bd9e-4ef2-9c21-f5fd1016edf22014-06-19 13:17:14.764 UTC8850a9e9-4a64-4a8f-af4f-5ce3a74335942014-06-25 12:51:26.93 UTC9ee52904-bc7a-44c7-919a-0993016f21622014-06-11 12:17:02.614 UTCWorkflow188input11output0PrettyPrintRinput1output00net.sf.taverna.t2.activitiesrshell-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.rshell.RshellActivityinput1falseoutput00falselocalhost6311falsefalseinputR_EXPoutputTEXT_FILEnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokePrettyPrintRinputoutputdeb0863c-b567-4755-af9c-b8b74d5e08e52013-06-21 14:31:25.529 UTC1c210d9a-059f-4c52-8df7-0310db5e211f2013-06-21 14:30:38.141 UTC3da1a855-6b93-4760-9496-19703d7ec3962014-01-22 14:29:59.616 UTCWorkflow3values_L11multiple00field00title00matrices_LL2SelectMatricesInteractionvalues1multiple0field0title0matrices22net.sf.taverna.t2.activitiesinteraction-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.interaction.InteractionActivityfield0text/plainjava.lang.Stringfalsevalues1text/plainjava.lang.Stringfalsemultiple0text/plainjava.lang.Stringfalsetitle0text/plainjava.lang.Stringfalsematrices22http://biovel.googlecode.com/svn/tags/mpm-20131215/select_matrices.htmlLocallyPresentedHtmlfalsenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeSelectMatricesInteractionvaluesSelectMatricesInteractionmultipleSelectMatricesInteractionfieldSelectMatricesInteractiontitlematrices_LL5f4b1899-ccf2-474b-b4fb-01a59e02f2642013-11-13 15:42:43.559 UTC08912d22-d766-4700-9394-77b1ef8e3a092013-10-28 16:49:51.515 UTC249fb6a7-886e-4835-8b18-8bc293a6d77e2013-10-28 16:45:55.371 UTC3682addc-6be9-4f7c-a61c-756ce05a2fdf2013-11-13 15:33:56.716 UTCe04e4d3f-c7c9-438c-bc0c-c9740084e9022013-11-13 13:50:47.718 UTC379602b6-1644-4b9f-a5bb-8161e03da77d2013-10-28 16:47:25.115 UTC4a0bbebd-3357-48c7-ad1e-b5bcb7b6ec5c2013-11-13 13:50:35.668 UTC4dbc4a0b-5962-4f21-96d2-0fb20185b17a2014-01-16 11:25:38.561 UTCb5e0ea8e-2e1a-409c-aec7-3f4c72ed167a2013-11-13 15:32:49.843 UTC9973b049-ee79-4fd7-8a87-8cf191d9509f2013-10-28 15:04:57.615 UTCConvert_Taverna_listlist_of_r_expressions22r_list_of_expressions1FlattenListOfStringsToStringstringlist1concatenated00net.sf.taverna.t2.activitieslocalworker-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.localworker.LocalworkerActivitystringlist1l('text/plain')java.lang.Stringtrueconcatenated00workfloworg.embl.ebi.escience.scuflworkers.java.StringListMergeUserNameHere2013-10-14 14:22:51.151 UTCnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeCombineListOfStringsIntoRListstringlist1output11net.sf.taverna.t2.activitieslocalworker-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.localworker.LocalworkerActivitystringlist1l('text/plain')java.lang.Stringtrueoutput11workfloworg.embl.ebi.escience.scuflworkers.java.StringListMergeUserNameHere2013-10-14 14:21:14.818 UTCnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeFlattenListOfStringsToStringstringlistCombineListOfStringsIntoRListstringlistr_list_of_expressionsJonathan Giddy2013-09-04 15:12:34.436 UTCConvert Taverna list of RExpr to R list2013-09-04 15:13:12.850 UTC13112099-3efd-42a7-bf18-a93c89de52dd2013-09-04 15:30:31.850 UTC472c6bef-15bc-4782-ab72-9e041b46e9d02013-10-14 14:28:56.870 UTCThis workflow accepts a Taverna list of arbitrary R expressions and returns a single R expression representing an R list containing the original expressions.
This workflow relies on the current Taverna behaviour of an R expression being represented by a list of strings containing the deparsed expression. If this changes, this workflow will likely break.
The first BeanShell converts each R expression (actually a list of strings) to a single string. This uses implicit iteration to do this for each R expression, so input port depth is 2 but the BeanShell input depth is 1.
The second Beanshell creates a comma-separated list of the deparsed R expressions and wraps the string with the R list() function. So now we have a single string s that can be turned into an R list using eval(parse(text=s)).
But RShell already does that parsing for us, so we just need to ensure the string looks like an R expression by turning it into a list of strings. So we actually output a 1-element list containing the string.
2013-10-14 14:28:55.280 UTC1ff54110-840d-474e-95a4-877c8f2c5b5e2013-09-04 15:26:02.821 UTCReadStageMatrixlabels_L11matrix_file00matrix_Rn21Matrix_ReadFromFilematrix_file0labels1read_matrix11net.sf.taverna.t2.activitiesrshell-activity1.5-SNAPSHOTnet.sf.taverna.t2.activities.rshell.RshellActivitymatrix_file0falselabels1falseread_matrix11falselocalhost6311falsefalsematrix_fileTEXT_FILElabelsSTRING_LISTread_matrixR_EXPnet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize1net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBouncenet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failovernet.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry1.0100050000net.sf.taverna.t2.coreworkflowmodel-impl1.5-SNAPSHOTnet.sf.taverna.t2.workflowmodel.processor.dispatch.layers.InvokeMatrix_ReadFromFilematrix_fileMatrix_ReadFromFilelabelsmatrix_Rn219c3521a-2d42-4f77-8dd2-10ab64286ef22013-10-15 13:59:10.98 UTCReadStageMatrix2013-10-14 14:13:34.18 UTC6b5b9009-65c6-45a2-941f-188268b27c592013-10-14 14:13:35.986 UTCa6ec62ed-cbc2-4705-812f-9fb8b80101692013-10-14 14:12:24.533 UTCc8cf946f-3771-4321-870a-26408be164c72013-10-14 15:33:20.159 UTC