Isis-fish-docs-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
January 2013
- 1 participants
- 6 discussions
Author: jcouteau
Date: 2013-01-25 10:46:44 +0100 (Fri, 25 Jan 2013)
New Revision: 127
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/127
Log:
Fix typo
Modified:
trunk/src/site/en/rst/v4/user/FAQ.rst
Modified: trunk/src/site/en/rst/v4/user/FAQ.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-25 09:46:27 UTC (rev 126)
+++ trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-25 09:46:44 UTC (rev 127)
@@ -343,7 +343,7 @@
N(Z1,t+1) ~= N(Z1,t)-F(met)* N(Z1,t), N(Z2,t+1)= N(Z2,t+1)-exp(-M/12) N(Z2,t) (if no migrations)
* To describe a refuge phenomenon, it might be good to add a migration of
- individuals in Z1 and Z2 in density dependecy... ?
+ individuals in Z1 and Z2 in density dependency... ?
Impact of a MPA zone if the MPA is included in the pop zone
1
0
Author: jcouteau
Date: 2013-01-25 10:46:27 +0100 (Fri, 25 Jan 2013)
New Revision: 126
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/126
Log:
Fix rst errors
Modified:
trunk/src/site/en/rst/v4/user/FAQ.rst
Modified: trunk/src/site/en/rst/v4/user/FAQ.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-24 16:43:55 UTC (rev 125)
+++ trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-25 09:46:27 UTC (rev 126)
@@ -343,7 +343,7 @@
N(Z1,t+1) ~= N(Z1,t)-F(met)* N(Z1,t), N(Z2,t+1)= N(Z2,t+1)-exp(-M/12) N(Z2,t) (if no migrations)
* To describe a refuge phenomenon, it might be good to add a migration of
-individuals in Z1 and Z2 in density dependecy... ?
+ individuals in Z1 and Z2 in density dependecy... ?
Impact of a MPA zone if the MPA is included in the pop zone
@@ -462,7 +462,7 @@
* `PATH` must contain : `%R_HOME%\bin`
Tips and tricks
---------------
+---------------
Fill in a table from a txt or csv file
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1
0
r125 - in trunk/src/site/en/rst/v4/user: . usermanual
by jcouteau@users.forge.codelutin.com 24 Jan '13
by jcouteau@users.forge.codelutin.com 24 Jan '13
24 Jan '13
Author: jcouteau
Date: 2013-01-24 17:43:55 +0100 (Thu, 24 Jan 2013)
New Revision: 125
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/125
Log:
Start translating usermanual
Added:
trunk/src/site/en/rst/v4/user/usermanual.rst
trunk/src/site/en/rst/v4/user/usermanual/
trunk/src/site/en/rst/v4/user/usermanual/GUI.rst
trunk/src/site/en/rst/v4/user/usermanual/introduction.rst
Added: trunk/src/site/en/rst/v4/user/usermanual/GUI.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/usermanual/GUI.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/usermanual/GUI.rst 2013-01-24 16:43:55 UTC (rev 125)
@@ -0,0 +1,198 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2010 Ifremer, Code Lutin
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+==============
+User interface
+==============
+
+Main window
+===========
+
+User interface is constituted of a window with tabs. Each tab allows you to use
+the simulator in a different way.
+
+.. image:: mainWindow.png
+
+This windows contains 6 tabs :
+
+- simulation launching
+- results rendering
+- fishery input
+- script, management rule, export, analysis plan, ... writing
+- sensitivity analysis launching
+- simulation queue
+
+It is also possible to open thos tabs in a new window from the *window* menu.
+
+The file menu
+-------------
+
+The first sub-menu *server synchronisation* allows you to synchronise scripts
+files with the server.
+
+The second sub-menu *quit* closes and quits ISIS-Fish.
+
+The window menu
+---------------
+
+The six sub-menus are the equivalent of the six tabs. They open the
+corresponding tab in a new window.
+
+The configuration menu
+----------------------
+
+The sub-menus allows you to configurate different parts of ISIS-Fish :
+* General configuration
+* VCS configuration
+* Caparmor use configuration
+
+For some options, you have to quit and launch ISIS-Fish back so that the new
+values are taken into account, such as the language.
+
+The help menu
+-------------
+
+The sub-menus allows you to reach different helps on ISIS-Fish.
+* This website
+* The different APIs documentation
+* The application logs window (useful in case of error or unusual behaviour)
+* The simulator information window.
+
+The status bar
+--------------
+
+The status bar, located at the bottom of the window indicates, on the right, the
+memory used and then the memory allocated to ISIS-Fish.
+
+The central zone allows ISIS-Fish to indicate messages and the left part
+indicates the progression of task being executed.
+
+Simulation launch
+=================
+
+The simulationlaunch tab allows you to parametrise the simulations and execute
+them.
+
+.. image:: simulationTab.png
+
+This tab is constituted of other tabs allowing you to modify :
+
+- Basis **Parameters** for the simulation : identifier, description, fishery,
+ strategies, populations, rules, number of years
+- **Pre-simulation script**, to activate it, you have to check the *use a
+ pre-simulation script* box in the Parameters tab. The pre-simulation script is
+ BSH executed before all the simulations and allows to modify the database.
+- **Simulation plan**, to activate it, you have to check the "Use an analysis
+ plan" box on the Parameters tab.
+- **Results export** that allows you to select export scripts to use and the
+ directory in which to store results.
+- **Results choice** allows you to choose the results that will be stored to be
+ visualised in the rendering results tab.
+- **Advanced parameters** that allows you to change the simulator to use,
+ activate or unactivate cache, activate or unactivate statistics, add free
+ parameters you can get back in the management rules, simulator,...
+
+If a management rule or an export needs a result that is not selected, then this
+result will be automatically added to the list of wanted results.
+
+When launching the simulation, the current date and time will be added to the
+simulation name.
+
+Results rendering
+=================
+
+The rendering results tab allows you to visualise results in graph, map or
+numbers. It also allows you to delete old simulations.
+
+.. image:: resultTab.png
+
+To open an old simulation, select the wanted simulation in the combo box and
+click on *open a new window*.
+
+.. image:: resultWindowGraph.png
+
+.. image:: resultWindowMap.png
+
+Fishery input
+=============
+
+The fishery input window allows you to visualise and modify fisheries.
+
+You can select your fishery in the combo box to see it appear.
+
+.. image:: inputTab.png
+
+.. image:: inputTabRegion.png
+
+Scripts writing
+===============
+
+The script tab allows you to modify all the scripts :
+
+- scripts
+- simulators
+- exports
+- rules
+- analysis plans
+- equation models
+- sensitivity analyses
+
+.. image:: scriptTab.png
+
+All those files are text files on the filesystem. So it is possible to use any
+text editor to modify them. See
+http://isis-fish.labs.libre-entreprise.org/othertools.html
+for more explanations.
+
+Sensitivity analysis launch
+===========================
+
+The sensitivity analysis launch tab allows you to parametrise sensitivity
+analyses, run them and analyse their results.
+
+.. image:: sensitivityTab.png
+
+This tab is made of different tabs that allow you to modify :
+
+- basis **Parameters** of the sensitivity analysis : identifier, description,
+ fishery, strategies, populations, rules, number of years
+- **Sensitivity analysis** allows you to chose the type of analysis used and
+ parametrise it.
+- **Results export** that allows you to select export scripts to use and the
+ directory in which to store results.
+- **Results choice** allows you to choose the results that will be stored to be
+ visualised in the rendering results tab.
+- **Advanced parameters** that allows you to change the simulator to use,
+ activate or unactivate cache, activate or unactivate statistics, add free
+ parameters you can get back in the management rules, simulator,...
+- **Results analysis** that allows you to see the (simple) results of a finished
+ sensitivity analysis.
+
+If a management rule or an export needs a result that is not selected, then this
+result will be automatically added to the list of wanted results.
+
+When launching the sensitivity analysis, the current date and time will be added
+to the analysis identifier. The identifier of each simulation is ended by _
+followed by the number of the simulation in the sensitivity analysis.
Added: trunk/src/site/en/rst/v4/user/usermanual/introduction.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/usermanual/introduction.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/usermanual/introduction.rst 2013-01-24 16:43:55 UTC (rev 125)
@@ -0,0 +1,123 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2010 Ifremer, Code Lutin
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+Introduction
+============
+
+Goals
+-----
+
+Most of the fisheries are complex systems because of the diversity in exploited
+resources (multi-specific) and fishing operations (multi-vessels). Those
+fisheries are said mixed or composite. The complexity of those fisheries also
+comes from spatial and seasonal heterogeneity of resources and fishing
+distributions. In mixed fisheries, resources are exploited either simultaneously
+or sequentially by fishing units (boat and fishermen) doing different
+fishing activities. So it is difficult to evaluate the resources and
+exploitation dynamics, and the resulting fishing mortality for the exploited
+populations. The diversity in fishing activities adn associated catches is due
+to the multiplicity in fishing locations, targeted species and gears used, but
+also to other factors such as fishermen individual behaviour and environmental
+and economic conditions.
+
+Besides, fishermen know spatio-temporal resource distribution, and they allocate
+their fishing effort accordingly. At big scales, those spatial distribution
+variations are mostly due to ontogenic moves and migrations, leading to
+concentration of some demographic stages in some zones at some period of time in
+the year, in relation with some life-cycle process (reproduction, feeding).
+
+In this context, it is essential to take into account the spatial and seasonal
+allocation of the fishing effort between fishing locations to evaluate the
+fishery dynamics. In mixed fisheries, those aspects are all the more important
+that fishermen can not only change of location but also of gear and
+target-species. Models spatially explicit are required to understand those
+fisheries dynamics.
+
+ISIS-Fish is a spatial and seasonal simulation model that describes resources,
+exploitation and management dynamics. It has been developed to explore the
+consequences of different management measures on fisheries dynamics. It allows
+to compare respective impacts of conventional measures such as Total Allowed
+Catches (TAC), fishing effort controls, technical measures on gears and Marine
+Protected Areas (MPA) in a broad way, i.e. spatialised management measures.
+
+ISIS-Fish is as generic as possible to be applied to a a lot of different
+fisheries. The software has a database allowing to integrate the fishery
+knowledge while being easily modified. That knowledge contains the parameters
+describing each population and each fishing activity.
+
+ISIS-Fish allows a big flexibility for several hypothesis of the model, such as
+relations between spawning stocks and reproduction, selectivity relations,
+etc. ; and that in order to guarantee a use by lots of demersal and benthic
+fisheries. Management measures and the answer from fishermen to those measures
+and environmental and economical conditions can be coded interactively thanks to
+a script language.
+
+ISIS-Fish applications to several european fisheries are in progress, in several
+national and european research project.
+
+Good to know before starting up...
+----------------------------------
+
+ * Despite all the attention given to conviviality and intuitivity in the
+ software supporting the model, ISIS-Fish stays before all a model. So reading
+ and understanding underlying equations and hypotheses is a mandatory stage
+ before parametrisation. Do not hesitate to ask clarifications using
+ mailing-lists if you need help.
+ * Several parameters input in ISIS-Fish, as well as management rules and
+ analysis plans creation need understanding Java language. We think basic
+ knowledge of this language is required to use the software. Tutorials on
+ experiment plans are available on this site as well as links to Java
+ tutorials.
+ * The methods linked to ISIS-Fish objects are documented in Java and ISIS-Fish
+ APIs. Mastering those pages is required in the software use.
+ * ISIS-Fiqh is a collaborative tool. We invite you to exchange using the wiki
+ and mailing-lists, your questions, thoughts and scripts at all the users
+ benefits.
+ * At last, we warn future users that regarding above points and ISIS-Fish model
+ complexity, parametrisation is a step requiring time that should not be
+ under-estimated.
+
+Model description
+-----------------
+
+ISIS-Fish is intended to evaluate spatialised and seasonal management measures
+on mixed fisheries. That goes through exploitation variables control such as
+catches and fishing effort.
+
+The simulator relies on three sub-models ; a population dynamics model, a
+fishing activity model and a management model. Each sub-model has a spatial and
+a seasonal dimension.
+
+.. image:: modelesFr.jpg
+
+The fishery region is defined by its edges and is cut into meshes. The mesh
+spatial resolution is chosen in function of the dynamics to describe and the
+available data. Zones (ie a group of contiguous meshes) are then independently
+defined for each population, fishing activity and management measure.
+
+The model has a monthly time step. Seasons (ie a month row) are also defined
+independently for each population, fishing activity and management measure. In
+each zone, and for each season, the fishing effort of a specific activity, or a
+population abundance, are supposedly homogeneous and uniformly distributed.
Copied: trunk/src/site/en/rst/v4/user/usermanual.rst (from rev 121, trunk/src/site/rst/v4/user/usermanual.rst)
===================================================================
--- trunk/src/site/en/rst/v4/user/usermanual.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/usermanual.rst 2013-01-24 16:43:55 UTC (rev 125)
@@ -0,0 +1,50 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2011 Ifremer, Code Lutin, Chatellier Eric
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+User documentation
+------------------
+
+- Introduction_
+- `User interface`_
+
+ + `Fishery input`_
+ + `Simulation launcher`_
+ + `Sensitivity analysis launcher`_
+ + `Results rendering`_
+ + `Script editor`_
+ + `Simulation queue`_
+- `Experiment plan - analysis plan`_
+- `Sensitivity analyses`_
+
+.. _Introduction: usermanual/introduction.html
+.. _User interface: usermanual/GUI.html
+.. _Fishery input: usermanual/inputs.html
+.. _Simulation launcher: usermanual/launcher.html
+.. _Lanceur d'analyse de sensibilite: usermanual/sensitivity.html
+.. _Results rendering: usermanual/results.html
+.. _Script editor: usermanual/scripts.html
+.. _Simulation queue: usermanual/queue.html
+.. _Experiment plan - analysis plan: usermanual/analysisPlan.html
+.. _Sensitivity analyses: ../downloads/manuel_sensitivity.pdf
1
0
Author: jcouteau
Date: 2013-01-24 15:27:50 +0100 (Thu, 24 Jan 2013)
New Revision: 124
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/124
Log:
Finish FAQ translation
Modified:
trunk/src/site/en/rst/v4/user/FAQ.rst
Modified: trunk/src/site/en/rst/v4/user/FAQ.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-22 16:56:23 UTC (rev 123)
+++ trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-24 14:27:50 UTC (rev 124)
@@ -32,6 +32,7 @@
------------------------------------------------
The numbers follow this pattern :
+
* the first number gives ISIS major version. If you got 3.1.3.1, you are in
version 3. If you got 4.0.0.0 you are in version 4.
* the second gives the database version in this major version. If you got
@@ -115,6 +116,7 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In the rules or plan script (script editor),
+
* at the imports levels, add : import fr.ifremer.isisfish.util.Doc
* on top of the parameter to document (for example public Zone param_zone =
null;), add @Doc("the parameter Zone correspond to ???")
@@ -243,6 +245,7 @@
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The following message appear ::
+
You don't use correct repository script for your application version 3.2.0.8.
Do you want to switch your repository ?
@@ -279,3 +282,218 @@
The tip consists in entering a huge vessel speed (fo example 10^9). The trip
length becomes really small ~0.
+Model
+-----
+
+Seasons definition for a population
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In ISIS, the seasons correspond to a modification of the parameters linked to
+events having an effect on the population (Reproduction, class change,
+migration,...)
+
+To define seasons, you have to place different events on a time line. Seasons
+will be the consecutive months between two events.
+
+Biological and migration events chronology at year scale
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Warning : class change and reproduction happens each month of the season whereas
+the migration happens on the first month of the season. You do not have to
+specify a season for recruitment as it can happen at any time in the season.
+
+FIXME Mail de Stéphanie du 11/07/07 : le changement de classe pour une
+population structurée en age ne se fait qu'une fois dans la saison, le code
+pourrait etre modifié pour éviter d'avoir à définir une saison d'un mois pour le
+changement de classe. Il y a des avantages et inconvénients (cf réponse
+d'Hilaire) On abandonne ?
+
+Take care to modelisation hypothesis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ISIS base hypothesis : all the state variables are supposed homogeneous at the
+defined zone scale - For example If a class of a pop is distributed on Zpop at a
+time step t, then this class number of individuals is homogeneously distributed
+on Zpop. An effort on a part of Zpop impacts all the individuals of the zone by
+diluting on all the zone pop::
+
+ (N(Zpop,t+1) ~= N(Zpop,t)-F(met)*(N(Zpop,t))).
+
+Would it be pertinent to make an impact on only the intersection between the
+metier zone and the pop zone?::
+
+ (N(Zpop,t+1) ~= N(Zpop,t)-F(met)*(N(Zpop,t)*(inter(Zmet,Zpop)/Zpop))
+
+If we want to evaluate the impact of an AMP included in Zpop,
+
+* Not distinguishing 2 population zones in Zpop [Z1=Zpop-Zg et Z2=Zg], will
+ have as consequence that the Z2 abundance will be impacted by the possible
+ catches in Z1 (because at each time step, the catches that could happen in Z1
+ will impact the Zpop abundance::
+
+ N(Zpop,t+1) ~= N(Zpop,t)-F(met)*(N(Zpop,t))
+
+ and with the homogeneous hypothesis in Zpop, the individuals numbers in Z2
+ will be equals to N(Zpop,t+1)*Z2/Zpop.
+
+* Distinguishing 2 population zones Z1=Zpop-Zg and Z2=Zg, leads to Z2 abundance
+ not being impacted by the Z1 catches (allows to model the fact that fishes in
+ Z2 are pledged to this zone)::
+
+ N(Z1,t+1) ~= N(Z1,t)-F(met)* N(Z1,t), N(Z2,t+1)= N(Z2,t+1)-exp(-M/12) N(Z2,t) (if no migrations)
+
+* To describe a refuge phenomenon, it might be good to add a migration of
+individuals in Z1 and Z2 in density dependecy... ?
+
+Impact of a MPA zone if the MPA is included in the pop zone
+
+ * If only one pop zone Zpop
+ * If Zg included in Zpop
+ * If the metier impacting the pop is distributed on Zmet=Zpop
+ * If the metier reallocates its effort on the remaining zone : Zmet-Zg=Z1,
+
+N(Zpop,t+1) = N(Zpop,t)-F(met)/(F(met)+M/12)exp(-F(met)+M/12)*N(Zpop,t), N(Z1,t+1) = N(Zpop,t+1)*Z1/Zpop, N(Z2,t+1) = N(Zpop,t+1)*Z2/Zpop,
+
+ * If Zg grows up (for example nZg=kZg), F(met) does not change, the individuals number
+
+N(Zpop,t+1) = N(Zpop,t)-{F(met)/(F(met)+M/12)*exp(-F(met)+M/12)}* N(Zpop,t) N(Z1,t+1) = N(Zpop,t+1)*[Zpop-kZg]/Zpop, N(Z2,t+1) = N(Zpop,t+1)*kZg/Zpop,
+
+**ie with a modelisation of the distribution zone of the pop in one zone (ie no
+heterogeneity between the part of the pop zone in the MPA and the other), a zone
+size change cannot have any impact**
+
+If we do the suggested hypothesis : N(Zpop,t+1) ~= N(Zpop,t)-F(met)*(N(Zpop,t)*(inter(Zmet,Zpop)/Zpop)).
+
+**In this case, the impact (difference between the individuals number for the
+big MPA - individual numbers for the small MPA) = (k-1)* Zg)/Zpop F(met)/(F(met)+M/12)*exp(-F(met)+M/12)}* N(Zpop,t)**
+
+Additional remark : superposition of population zones
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+:?: ''To check again, but a priori : ''
+
+If necessary, it is possible to create population zones that overlap for the
+same population. If the natural mortality is the same for both zones, the
+catches in the intersection zone will be rightly computed. If the natural
+mortality is the same in both zones, the effort E(str, met, grp) and then the
+fishing mortality F(str, met, grp) and the catches rate CR(str, met, grp)
+are computed independently for each pop zone but identical, so we got :
+
+ * pop zone 1 : E -> F -> CR
+ * pop zone 2 : E -> F -> CR
+
+and the catches will be B1*CR + B2*CR = (B1+B2)*CR
+
+(and that works whether we are in the by cell model or by zone model)
+
+Catchability in ISIS-Fish
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The catchability in ISIS-Fish is the biological part of the parameter
+(disponibility) as stated by Mahévas et al. 2001 = accessibility*vulnerability.
+The part due to boat and gear is taken into account explicitly in ISIS-Fish by
+the selectivity/targeting/fishing efficiency/etc parameters.
+The disponibility parameter usually represents the probability variations of the
+catches due to to the change of spatial distribution.
+Those variations are modeled explicitly in ISIS as the model is spatialised.
+So the parameter compensate for the other causes of probability variations of
+the catches by effort unit related to the fish behaviour (schooling aggregation,
+burying, vertical distribution change,...).
+
+see
+Mahevas, S., Trenkel, V.M., Doray, M. and Peyronnet, A. 2011. Hake catchability by the french trawler fleet in the bay of biscay: estimating technical and biological components. ICES JOURNAL OF MARINE SCIENCE 68: pp. 107-118
+Laurec, A., et J. C. Le Guen. Dynamique des populations marines exploitées Tome1 : Concepts et Modèles. Centre National pour l’Exploitation des Océans, 1981. 602.
+Gascuel: http://halieutique.agrocampus-ouest.fr/pdf/136.pdf
+citing:
+Anonyme, 1979. Monitoring of fish stock abundance : the use of catch and effort data.
+FAO Fish. Tech. Paper. 155 : 101 p.
+Chadwick M., R.N. O'Boyle, 1990. L'analyse des données de captures et d'effort. In:
+Méthodes d'évaluation des stocks halieutiques, Brêthes J.C., R.N. O'Boyle éd., Univ.
+Québec à Rimouski, Vol. I et II, 77-101.
+
+Simulations
+-----------
+
+What happens at t=0 ?
+~~~~~~~~~~~~~~~~~~~~~
+
+During a simulation, the first time step is particular, and all the events
+usually happening in january do not necessary happen :
+Lors d'une simulation, le premier pas de temps est particulier, et tous les
+événements se déroulant habituellement en janvier n'arrivent pas forcement :
+
+ * migration happens
+ * class change does not happen
+
+FIXME will it be modified ???
+
+:-( Take care while entering initial fish numbers an results from january from
+year 0. They are not comparable with those from other years of simulation.
+
+Simulation by cell
+~~~~~~~~~~~~~~~~~~
+
+To do a simulation by cell, in the simulation (or sensitivity analysis)
+launching interface, in the "Advanced Parameters" tab, we can add an
+"effortByCell" tag which value is true.
+
+Sensitivity analysis
+--------------------
+
+ISIS-Fish closes itself when I launch a sensitivity analysis
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+It comes from an incomplete R configuration. Report to the point "Sensitivity
+analysis does not work"
+
+From 3.3.0.0 ISIS-Fish version, an error should show up in the logs (debug.txt)
+and ISIS-Fish should not close itself.
+
+Sensitivity analysis does not work
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+THe most common mistake come from an incomplete R configuration for ISIS-Fish.
+
+You should have R 2.9.0 version.
+
+On Windows, you should configurate the two environment variables :
+
+ * `R_HOME` to C:\Program Files\R\R-2.9.2
+ * `PATH` must contain : `%R_HOME%\bin`
+
+Tips and tricks
+--------------
+Fill in a table from a txt or csv file
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In user interfaces, you have to right-click on the table to fill and choose
+'import from a file'.
+
+Big integers are problematic
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+You have to write 39E3 instead of 39000
+
+Why 41/1000 gives 0 ?
+~~~~~~~~~~~~~~~~~~~~~
+
+In my rule, I divide 41 by 1000 and the result is 0, why ?
+
+In Java, everything is typed. What is done in this operation is an euclidian
+division, 41 and 1000 being integers. To have the result of a "classic"
+division, you have to do 41.0/1000.0. Both numbers being decimals (float or
+double), the number will be with decimal (double or float).
+
+More generally, in Java, on an operation between two types, Java keeps the
+bigger precision. For exemple, betwwen two integers, you will have an integer
+between two doubles, you will have a double, but between an intyeger and a
+double, you will have a double. You can have more info here (in french) :
+http://www.siteduzero.com/tutoriel-3-10276-les-variables-et-les-operateurs.html#ss_part_2
+
+How do I do an exponential (or any other "evolved" mathematical function)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+For most of usual mathematical operation, you have to use static methods from
+Math class.
+
+More info (in french) : http://jmdoudoux.developpez.com/cours/developpons/java/chap-math.php
1
0
r123 - in trunk/src/site/en/rst/v4/user: . tutorials
by jcouteau@users.forge.codelutin.com 22 Jan '13
by jcouteau@users.forge.codelutin.com 22 Jan '13
22 Jan '13
Author: jcouteau
Date: 2013-01-22 17:56:23 +0100 (Tue, 22 Jan 2013)
New Revision: 123
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/123
Log:
Continue translating FAQ into english. Add tuto that are linked from FAQ (not translated)
Added:
trunk/src/site/en/rst/v4/user/tutorials/
trunk/src/site/en/rst/v4/user/tutorials/simulationPlan.rst
trunk/src/site/en/rst/v4/user/tutorials/useAPI.rst
Modified:
trunk/src/site/en/rst/v4/user/FAQ.rst
Modified: trunk/src/site/en/rst/v4/user/FAQ.rst
===================================================================
--- trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-21 15:43:25 UTC (rev 122)
+++ trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-22 16:56:23 UTC (rev 123)
@@ -117,10 +117,165 @@
In the rules or plan script (script editor),
* at the imports levels, add : import fr.ifremer.isisfish.util.Doc
* on top of the parameter to document (for example public Zone param_zone =
- null;), add @Doc("the parameter Zone correspond to ???")
+ null;), add @Doc("the parameter Zone correspond to ???")
Insert comments in a script
~~~~~~~~~~~~~~~~~~~~~~~~~~~
System.out.println ();
+How to use APIs ?
+~~~~~~~~~~~~~~~~~
+
+cf tutorial_ .
+
+.. _tutorial: tutorials/useAPI.html
+
+
+How to create simulation plan scripts
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+`cf tutorial`_
+
+.. _cf tutorial: tutorials/simulationPlan.html
+
+What is the structure of an analysis plan or management rules script ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+cf simulation procedure at the bottom of `this page`_ and `this one`_
+
+.. _this page: ../devel/architecture.html
+
+.. _this one: usermanual/analysisPlan.html
+
+A parameter of my rule behaves strangely, what is happening ?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The rules parameters variables (thos which start by \param_) are initialized at
+the beginning of each simulation and not each time step. So you have not to
+modify them but use intermediate variables.
+
+User interfaces
+---------------
+
+Verifying fishery parameters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+* For all the fishery. In the region interface : bottom button to check.
+
+ - blue : ok
+ - orange : parameters with a problem
+* For an equation. In the equation editor : check button - syntax verification
+* For a script (rule, AnalysisPlan,...). In the script editor : check button -
+ syntax verification. You can check the differences between your version and
+ the server version using the server menu from the script editor interface.
+
+What "tag" is for in the launcing interface, in the advanced parameters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Parameterize exports, the simulator or equations.
+
+Example : In the simulator, simulate economical variables::
+
+ if (!"false".equalsIgnoreCase(param.getTagValue().get("ecoResult"))) {
+ control.setText("Add economics results");
+ saveGravityModel(date, resManager, gravityModel);
+ }
+
+Here the tag is called ecoResult
+
+Effort description
+~~~~~~~~~~~~~~~~~~
+
+The variables 'Fishing operation number' and 'gear number per operation' are
+taken into account in the equations for the "effort standardisation by trip"
+this way::
+
+ StdEffortPerHour = Fstd * FishingOperationNumber * GearNumberPerOperation.
+
+So they have to be fille din when Fstd is computed at FishingOperation*gear
+scale.
+
+If Fstd is computed at trip scale, you HAVE TO put 1 in both variable (or
+catches will be nil). The "fishingOperationLength" variable is not used in
+equations.
+
+Units...
+~~~~~~~~
+
+Trip types :
+
+ * Trip length in hours
+ * Minimum time between two trips : unused
+
+Vessel type
+
+ * Trip max length : unused
+ * speed in km/h
+ * activity interval : unused
+
+Enter a management rule application month in the simulation launching interface
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+That is the number of the month that is queried, so a number between 0 and 11
+(0 : january, 11 : december). Otherwise you will have a bug !
+
+Did the simulation run ?
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+* Ensure the simulation is in "simulation finished" state in the simulation
+ queue
+
+* Select the simulation in the table (or in simulation result interface) and
+ click on "see the logs"
+
+* Select fatal, error and warning : If something appears, there is a bug. Below
+ ERROR is the exception. You have to look into the stacktrace and watch for a
+ line with ifremer.isisfish and see what it says.
+
+See Numbers and biomasses in the results window
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Small tweak : In the results window, the numbers, biomass of a population for a
+month is the number/biomass at the end of the previous time step.
+
+You do not use the correct repository for your ISIS-Fish version
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The following message appear ::
+ You don't use correct repository script for your application version 3.2.0.8.
+ Do you want to switch your repository ?
+
+This message appear when you use a new major version of ISIS-Fish. It simply
+asks you if you want to use the new script version that works with your new
+version.
+
+Modeling tips
+-------------
+
+Split males and females with different growth
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+We create consecutive length classes for males and others for the females that
+will follow. For examples, for males we got those classes::
+
+ 60-70 70-77 77-110 110-166
+
+and for females ::
+
+ 60-70 70-78 78-86
+
+you click on 'recruit classes'. For the first length, enter '60'.
+Then for the max lengths, enter :
+'70;77;110;166;70;78;86' and validate. That will create a 4th class with
+minimal length of 166 and maximal length of 70 !
+
+In the population group interface, modify the minimal length of the 4th class
+(the first female class) : from 166 to 60. You save and that's all !!!
+
+To do not take into account the trip time in the effort
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The tip consists in entering a huge vessel speed (fo example 10^9). The trip
+length becomes really small ~0.
+
Copied: trunk/src/site/en/rst/v4/user/tutorials/simulationPlan.rst (from rev 121, trunk/src/site/rst/v4/user/tutorials/simulationPlan.rst)
===================================================================
--- trunk/src/site/en/rst/v4/user/tutorials/simulationPlan.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/tutorials/simulationPlan.rst 2013-01-22 16:56:23 UTC (rev 123)
@@ -0,0 +1,208 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2011 Ifremer, Code Lutin, Chatellier Eric
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+Tutorial to use simulation plans
+================================
+
+This tutorial have not been translated yet. Here is the French version
+
+Un plan d'analyse est un ensemble d'expériences (simulations) pour lesquelles on
+va modifier la valeur de certains paramètres selon un protocole défini pour
+répondre à une question. On distingue des plans de simulations pour lesquels
+
+* *les expériences sont indépendantes* . C'est à dire que l'ordre des
+ simulations n'a pas d'importance et que l'on pourrait par exemple les lancer
+ sur des ordinateurs différents. Les valeurs que les paramètres devront prendre
+ à chaque nouvelle simulation sont déterminées au préalable.
+
+* *les expériences sont séquentielles* . Les valeurs des paramètres de la
+ simulation n+1 dépendent des résultats de la simulation n.
+
+Expériences Indépendantes : exemple d'une analyse de sensibilité
+----------------------------------------------------------------
+
+Dans le cas d'expériences indépendantes, la première étape est de définir les
+paramètres à modifier et les différentes valeurs qu'ils devront prendre
+(appelées « modalités »). On les organise ensuite selon un plan d'expérience
+adéquat (plan complet, factoriel, optimisé...) qu'on écrit sous forme de matrice.
+Des méthodes sont déjà disponibles pour réaliser ce type de plans sous
+ISIS-Fish. Ils sont décrits ici mais libre à l'utilisateur d'écrire ses propres
+scripts si la méthode actuellement utilisée ne répond pas à ses besoins. Voici
+la description et le fonctionnement des scripts existants : ils nécessitent
+l'écriture de 3 types de fichiers : un script de plan d'analyse, une matrice
+d'expérience et des fichiers paramètre :
+
+La matrice d'expérience
+~~~~~~~~~~~~~~~~~~~~~~~
+
+*La matrice d'expérience* est une matrice [expériences x paramètres] : chaque
+colonne correspond à l'un des paramètres à modifier et chaque ligne contient
+les modalités des paramètres pour une expérience donnée. Les modalités sont
+codées par des entiers (-1 ;0 ;1 etc). Cette matrice est copiée dans un
+fichier .txt sans en-tête de colonnes ni de lignes.
+
+Les fichiers paramètres
+~~~~~~~~~~~~~~~~~~~~~~~
+
+*Les fichiers paramètres* : un fichier .txt par paramètre donnant la
+correspondance entre la valeur de la modalité (-1 ;0 ;1) dans la matrice et la
+valeur du paramètre. Ce paramètre peut être un réel, une liste de réels, une
+équation… Si l'on nomme les modalités –1 et 1, le fichier est de la forme
+
+Pour un paramètre qui est une liste
+___________________________________
+
+::
+
+ -1=0.5;0.8;0.9;0.11
+ 1=0.5;0.11;0.15;0.41
+
+Pour un paramètre qui est une équation
+______________________________________
+
+::
+
+ -1=if(condition = true) return 5 ; else return 3 ;
+ 1=if(condition = true) return 7 ; else return 3 ;
+
+Pour un paramètre qui est un réel
+_________________________________
+
+::
+
+ -1=0.8
+ 1=1.2
+
+Autres
+______
+
+On peut aussi modifier les paramètres des règles de gestion...(voir
+exemple). Il faut alors indiquer dans le .txt tous les paramètres public de
+la règle. Attention pour certaines règles de gestion il faut définir la
+population, l'engin, la zone... ciblée par la règle dans les paramètres.
+Pour ce faire il n'est pas possible d'écrire le nom de la population, de la
+zone... il faut déterminer le code correspondant qui est du genre
+
+::
+
+ fr.ifremer.isisfish.entities.Zone#1169028645767#0.37798185123822536
+
+Pour cela on peut faire tourner une simulation avec la règle en question
+correctement paramétrée et aller voir dans les logs (fichier debug.txt dans
+le même dossier que le .bat de lancement), ces codes sont inscrits à coté du
+nom du paramètre au moment de l'initialisation des règle de gestion.
+
+*Attention !!!!* dans ces fichiers la syntaxe est importante:
+
+* Pas d'espace
+* Pas de « ; » à la fin des lignes
+* Pas de « + » devant un chiffre quand il désigne une modalité (+1=NON ; 1=OUI)
+
+Les fichier matrix.txt et les fichiers paramètres.txt doivent être placés *dans
+un même dossier* de préférence localisé dans le dossier contenant le .bat de
+lancement d'ISIS-Fish (qui est la racine pour le logiciel).
+
+Exemple
+~~~~~~~
+
+On propose ici la matrice et les fichiers paramètres d'une analyse
+de sensibilité sur les paramètres de croissance, capturabilité, selectivité et
+la période de fermeture d'un cantonnement.
+
+`Fichiers parametres et matrice`_
+
+.. _Fichiers parametres et matrice: ../../downloads/Exemple_directory.zip
+
+*Le script de plan de simulation* (écrit à partir de l'éditeur de scripts)
+permet de récupérer et modifier les valeurs des paramètres en fonction de la
+matrice d'expérience pour chaque simulation. (Voir le manuel pour l'explication
+de la structure des scripts de plans de simulation.)
+
+On joint ici le script commenté correspondant à l'analyse de sensibilité
+précédante. Le script contient les méthodes nécessaires à lire les fichiers
+matrice.txt et les fichiers contenant les modalités des paramètres. Il contient
+aussi le code servant à modifier les valeurs de ces paramètres dans la base de
+donnée (pour connaitre les méthodes permettant d'accéder aux différents
+paramètres de la base de donnée, se référer aux APIs).
+
+`Script d'analyse de sensibilite`_
+
+.. _Script d'analyse de sensibilite: ../../downloads/Exemple_PlanSimulation.java
+
+Plans sequentiels : exemple de calibration par la méthode du simplexe
+---------------------------------------------------------------------
+
+Dans ce cas, les modalités prises par les paramètres à la simulation suivante
+dépendent des résultats des simulations précédentes. Il faut donc écrire
+l'algorithme de calcul de ces nouvelles valeurs en fonction des résultats de
+simulation dans le script du plan d'analyse. Il faut également écrire le code
+permettant de modifier la valeur des paramètres pour la remplacer par la
+nouvelle valeur calculée.
+
+Exemple
+~~~~~~~
+
+L'exemple reprend un script qui permet de calibrer deux paramètres (ici la
+capturabilité) par la méthode du simplexe à pas variable à partir des
+débarquements trimestriels.
+
+`Script de calibration`_
+
+.. _Script de calibration: ../../downloads/calibration.java
+
+Lancement d'un Plan d'analyse
+-----------------------------
+
+Quand les scripts sont écrits, c'est tout simple !
+
+Dans l'interface de lancement de simulation on prépare sa simulation comme
+d'habitude à l'exception des règles de gestion : il ne faut pas charger une
+règle si elle doit être modifiée par le plan car elle sera ajoutée par le plan
+d'analyse à la suite des règles entrées dans l'interface. On coche la case
+« Utiliser le plan d'analyse ». On sélectionne le plan Exemple_PlanAnalyse ou
+CalibrationExpeceq1q2 dans la liste déroulante. On remplit les paramètres du
+plan et on lance la simulation.
+
+PS : Attention à bien vérifier les différentes étapes listées dans le Pense-Bête
+sinon gare aux 500 simulations sans effectifs initiaux... ;-)
+
+Biblio intéressante
+-------------------
+
+* Drouineau, H., Mahévas, S., Pelletier, D. and Beliaeff, B. 2006. Assessing the
+ impact of different management options using ISIS-Fish: the French
+ Hake-Nephrops mixed fishery of the Bay of Biscay. Aquatic living resource,
+ 19 : 15-29.
+* Saltelli, A., Tarantola, S., Campolongo, F. and Ratto, M. 2004. Sensitivity
+ Analysis in Practise. A guide to Assessing Scientific Models. J.W.&. Sons. pp.
+* Kleijnen, J.P.C. 1998. Experimental Design for Sensitivity Analysis,
+ Optimization, and Validation of Simulations Models. In Handbook of simulation.
+ Principles, Methodology, Advances, Applications and Practise, pp. 173-224. Ed.
+ by Banks, J. Wiley, New York. Engeneering and Management Press. 864 pp.
+* Walters, F.H., Parker, L.R., Morgan, S.L. and Deming, S.N. 1991. Sequential
+ Simplex optimization: a technique for improving quality and productivity in
+ research, development, and manufacturing (Chemometrics series). B.R. CRC Press
+ LLC. 402 pp.
+* Nocedal, J., and Wright, S.J. 2006. Numerical Optimization. Mikosch, T. V., Resnick, S. I. , andRobinson, S. M. (Eds.). 2nd Ed., Springer Series in Operations Research, New York.
\ No newline at end of file
Copied: trunk/src/site/en/rst/v4/user/tutorials/useAPI.rst (from rev 121, trunk/src/site/rst/v4/user/tutorials/useAPI.rst)
===================================================================
--- trunk/src/site/en/rst/v4/user/tutorials/useAPI.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/tutorials/useAPI.rst 2013-01-22 16:56:23 UTC (rev 123)
@@ -0,0 +1,137 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2010 Ifremer, Code Lutin
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+Tutorial on APIs use
+====================
+
+This tutorial have not been translated to english yet.
+
+Avant tout il faut savoir, que toutes les valeurs saisies dans l'interface de
+saisie par l'utilisateur sont stoquées dans les objets d'ISIS correspondants.
+Pour modifier ces valeurs avant ou en cours de simulation, il faut connaitre
+leur nature et leur structure, savoir comment y accéder et les modifier.
+Pour savoir comment y accéder il faut connaitre les dépendances entre objets
+(objets qui sont des attributs d'autres objets). Pour cela on consulte
+l'architecture de la base de donnée ( `Modele ISIS-Fish`_ ) qui se reflète dans
+l'architecture de l'interface de saisie.
+
+Pour savoir comment passer d'un objet a un autre il faut connaitre les méthodes
+appliquables aux objets : tout est dans l'API.
+
+Remarque : Il vaut mieux commencer par se familiariser avec les differents types
+d'objets JAVA (double, boolean, string, integer, equation, matrix,...), les
+attributs et les methodes (cf tutoriaux JAVA).
+
+Voici un exemple "pas à pas" pour le cas ou l'on voudrait modifier l'equation de
+mortalité naturelle dans un plan d'analyse par exemple. On veut remplacer
+provisoirement la valeur de la base par une autre. On crée un objet String
+rempli avec l'autre valeur par exemple::
+
+ String mortalitenaturelle = "if (groupe.getId() == 0) return 1.5; else return 0.2;"
+
+Se poser la question : "Dans la base de donnée où se trouve la mortalité naturelle ?"
+-------------------------------------------------------------------------------------
+
+Réponse : dans l'interface de saisie, elle est dans la branche "population" et
+l'onglet "equations".
+(au passage le titre de l'onglet nous renseigne sur le type d'objet auquel on a
+affaire : ya de grandes chances pour que parmi la batterie d'objets possibles
+(int, double, matrice...) la mortalité naturelle soit une equation ;-) )
+
+En francais on dirait "dans population, va chercher l'objet equation de
+mortalité naturelle, et attribut lui la valeur du string mortalitenaturelle", ya
+pu qu'a le dire en java.
+
+Ouvrir la page des APIs
+-----------------------
+
+Dans la colonne de gauche de l'API (sous "all classes") on cherche l'entite
+"population" et on clique dessus.
+
+Les méthodes disponibles
+------------------------
+
+Toutes méthodes que l'on peut appliquer à un objet population (colonne de
+droite) s'affichent , et le type d'objet qu'elles renvoient (colonne de gauche).
+
+c'est a dire que les lignes de commandes qu'on ecrira seront de la forme::
+
+ objet_renvoyé_indiqué_à_gauche nomObjet = population.methode_ecrite_à_droite(argument de la methode);
+
+Il y a surtout deux grands types de méthodes :
+
+* les méthodes "get" : qui vont chercher un objet
+* les méthodes "set" : qui assignent une valeur a un objet.
+
+Dans notre exemple on veut changer l'equation de mortalité naturelle, c est donc
+un set !
+
+On cherche une méthode qui parle de mortalité naturelle...
+----------------------------------------------------------
+
+On trouve getNaturalDeathRate() qui renvoit un objet equation (c'est l'objet
+equation qui contient la valeur de l'equation de mortalite naturelle remplie par
+l'utilisateur) et setNaturalDeathRate(Equation naturalDeathRate) pour laquelle
+on doit passer un objet equation (une equation de naturalDeathRate) en argument.
+
+(en cliquant sur le nom de la méthode on a une description sommaire de ce
+qu'elle fait)
+
+setNaturalDeathRate() parait être ce qu'on veut faire...
+mais la méthode setNaturalDeathRate prend en argument une equation, on ne peut
+donc pas faire::
+
+ pop.setNaturalDeathRate(mortalitenaturelle);
+
+puisque mortalitenaturelle n'est pas une equation mais un string.
+
+
+Créer une équation
+------------------
+
+Du coup il faut trouver autre chose qui fasse le lien entre un string et une
+equation. En cliquant sur "equation" dans la page d'API on tombe sur la page des
+méthodes qui s'appliquent aux objets qui sont des equations. On trouve une
+méthode .setContent(String ) qui prend en argument un string. Ca veut dire que
+si on a une equation, on peut lui changer sa valeur en utilisant cette methode
+avec un string en argument.
+L'equation dont on veut changer la valeur on sait la récupérer::
+
+ Equation eqMortalite = pop.getNaturalDeathRate();
+
+L'objet eqMortalite est un objet equation::
+
+ eqMortalite.setContent(mortalitenaturelle);
+
+et là on a le droit vu que mortalitenaturelle est un string et que la méthode
+prend un string en argument.
+
+et voilà c'est fait !
+
+remarque : on pourrait le faire en 1 ligne::
+
+ pop.getNaturalDeathRate().setContent(mortalitenaturelle);
+
+.. _Modele ISIS-Fish: ../isisFishModel.html
1
0
r122 - in trunk/src/site: . en/rst en/rst/v4 en/rst/v4/user
by jcouteau@users.forge.codelutin.com 21 Jan '13
by jcouteau@users.forge.codelutin.com 21 Jan '13
21 Jan '13
Author: jcouteau
Date: 2013-01-21 16:43:25 +0100 (Mon, 21 Jan 2013)
New Revision: 122
Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/122
Log:
Begin translating FAQ to english
Added:
trunk/src/site/en/rst/v4/
trunk/src/site/en/rst/v4/index.rst
trunk/src/site/en/rst/v4/user/
trunk/src/site/en/rst/v4/user/FAQ.rst
Modified:
trunk/src/site/site_en.xml
Copied: trunk/src/site/en/rst/v4/index.rst (from rev 121, trunk/src/site/rst/v4/index.rst)
===================================================================
--- trunk/src/site/en/rst/v4/index.rst (rev 0)
+++ trunk/src/site/en/rst/v4/index.rst 2013-01-21 15:43:25 UTC (rev 122)
@@ -0,0 +1,53 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 2011 Ifremer, CodeLutin, Chatellier Eric
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+Documentation version 4
+=======================
+
+* `FAQ`_ : Frequently asked questions
+.. * `Warning`_
+.. * `Installation`_
+.. * `User manual`_
+.. * `Changes in version 4.0`_
+.. * `Migration from 3.x to 4.0`_
+.. * `Tutorials`_
+.. * `Developer manual`_
+.. * `APIs documentation`_
+.. * `ISIS scripts examples`_
+.. * `R scripts examples`_
+.. * `Note to CAPARMOR users`_
+
+.. _Warning: user/warning.html
+.. _Installation: user/installation.html
+.. _User manual: user/usermanual.html
+.. _Tutorials: user/tutorials.html
+.. _FAQ: user/FAQ.html
+.. _Developer manual: devel/index.html
+.. _APIs documentation: user/API.html
+.. _ISIS scripts examples: user/scripts.html
+.. _R scripts examples: user/scriptsR.html
+.. _Changes in version 4.0: user/changements40.html
+.. _Migration from 3.x to 4.0: user/migrationv3v4.html
+.. _Note to CAPARMOR users: user/tutorials/utilCaparmor.rst
Copied: trunk/src/site/en/rst/v4/user/FAQ.rst (from rev 121, trunk/src/site/rst/v4/user/FAQ.rst)
===================================================================
--- trunk/src/site/en/rst/v4/user/FAQ.rst (rev 0)
+++ trunk/src/site/en/rst/v4/user/FAQ.rst 2013-01-21 15:43:25 UTC (rev 122)
@@ -0,0 +1,126 @@
+.. -
+.. * #%L
+.. * IsisFish
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 1999 - 2011 Ifremer, Code Lutin, Chatellier Eric
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU General Public License as
+.. * published by the Free Software Foundation, either version 3 of the
+.. * License, or (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU General Public
+.. * License along with this program. If not, see
+.. * <http://www.gnu.org/licenses/gpl-3.0.html>.
+.. * #L%
+.. -
+
+Frequently Asked Questions (FAQ)
+================================
+
+.. contents::
+
+What does the numbers 3.1.3.1 or 4.0.0.0 means ?
+------------------------------------------------
+
+The numbers follow this pattern :
+ * the first number gives ISIS major version. If you got 3.1.3.1, you are in
+ version 3. If you got 4.0.0.0 you are in version 4.
+ * the second gives the database version in this major version. If you got
+ 3.1.3.1, you are in version 1 of the database. If you got 4.0.0.0 you are in
+ version 0.
+ * the third number gives you the scripts version to use
+ (isis-fish-4/isis-database)
+ * the last number represents the minor version. In 3.1.3.1, the minor version
+ is 1.
+
+When you already got ISIS-Fish, you can use any other version with the same
+major, base and scripts numbers. It means that only the minor number changes.
+
+If you want to use an ISIS-Fish version with an upper base number, ISIS-Fish
+will automagically convert your database into this version. You will not be able
+to use an ISIS-Fish version with a lower base number.
+
+It is possible to use ISIS-Fish in two different major versions because they do
+not share the same configuration files. So they are two completely different
+installations.
+
+You can launch version 3 and version 4 at the same time.
+
+What are my limits when I write scripts ?
+-----------------------------------------
+
+You have to never modify an object returned by a script method because a caching
+system is used. If you do so, you modify the cache object, and on the next call,
+you will get the modified object and not the one you want. For example, if you
+return a ``List``, you have to, in the method that gets the list, do a copy of
+that ``List`` before modifying it. If you just read the ``List`` content, you
+have nothing to do.
+
+Scripts : objects and syntax
+----------------------------
+
+Know ISIS objects and methods
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ * List of objects, methods and links between objects (UML model) :
+ ../../v3/devel/images/IsisFishModel.png .
+ This figure gives you the name of objects and the name of the attached methods
+ * ISIS-Fish API : http://www.isis-fish.org/apidocs/index.html
+ * Scripts access : in the software, using the scripts edition interface. Most
+ of the equations are in ``scripts/SiMatrix.java``. All the other scripts are
+ available online : http://www.isis-fish.org/xref/ . The source are also
+ viewable from the svn repo :
+ http://svn.forge.codelutin.com/svn/isis-fish/trunk/
+
+Update scripts
+~~~~~~~~~~~~~~
+
+This can be done via synchronisation with the server : File/Server
+synchronization. This action compares the scripts on the PC with those on the
+server and indicates the differences. You have then to check the scripts you
+want to update and validate.
+
+Warning : If an error is indicated in a script, the synchronisation will modify
+the said script. If modifications happen betwen the local version and the server
+versions, the lines in error will be marked with '<<<<'. You will have the local
+version and the server version. You have to choose the version to keep and
+delete or comment the other one so that the script can work.
+
+All the scripts are available here :
+http://svn.forge.codelutin.com/svn/isis-fish-data/trunk/
+
+Local scripts
+~~~~~~~~~~~~~
+
+If you have local scripts, they are not synchronized.
+
+Inherited scripts
+~~~~~~~~~~~~~~~~~
+
+If a local script have been written from a script on the server, it is necessary
+to keep track of the script of origin. So in cas the script of origin is
+modified on the server, the user can find the local inherited scripts and modify
+them back.
+
+Add a contextual help on rules and analysis plans
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In the rules or plan script (script editor),
+ * at the imports levels, add : import fr.ifremer.isisfish.util.Doc
+ * on top of the parameter to document (for example public Zone param_zone =
+ null;), add @Doc("the parameter Zone correspond to ???")
+
+Insert comments in a script
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+System.out.println ();
+
Modified: trunk/src/site/site_en.xml
===================================================================
--- trunk/src/site/site_en.xml 2012-12-20 15:15:22 UTC (rev 121)
+++ trunk/src/site/site_en.xml 2013-01-21 15:43:25 UTC (rev 122)
@@ -65,6 +65,9 @@
<item name="Roadmap"
href="http://forge.codelutin.com/projects/isis-fish/roadmap" />
<item name="Download" href="download.html" />
+ <item name="Documentation" href="v4/index.html">
+ <item name="FAQ" href="v4/user/FAQ.html"/>
+ </item>
<item name="Publications" href="publications.html" />
<item name="Research projects" href="research.html" />
<item name="License" href="license.html" />
1
0