Commit 4cfa6286 authored by pfreon's avatar pfreon
Browse files

Allowing fraction of years as input data

Possibility of using input data desaggregated by semesters or less whan several recruitments per year.
parent 6e2144a4
......@@ -627,9 +627,7 @@ public class CadreMain extends JFrame {
dlg.setModal(true);
dlg.setVisible(true);
int d;
System.out.println("In CadreMain ligne 619 Global.FlagNewHtmlFolder = " + Global.FlagNewHtmlFolder);
if (Global.FlagNewHtmlFolder == true) {
System.out.println("In CadreMain ligne 621 Global.FlagNewHtmlFolder = " + Global.FlagNewHtmlFolder);
d = dlg.getResult();
Global.FlagNewHtmlFolder = false; // (réinitialization)
System.out.println("In CadreMain ligne 622 d = " + d);
......@@ -893,7 +891,7 @@ System.out.println("In CadreMain ligne 621 Global.FlagNewHtmlFolder = " + Global
int nbc = t.getColumnModel().getColumnCount();
for (int i = 0; i < nbc; i++) {
tmcolumn = t.getColumnModel().getColumn(i);
tmcolumn.setMinWidth(70);
tmcolumn.setMinWidth(80); // Width of the tables on the left panel.
}
}
......@@ -907,10 +905,11 @@ System.out.println("In CadreMain ligne 621 Global.FlagNewHtmlFolder = " + Global
//System.out.println("Flag jTextAreaFaits.setText(makeFaits()) ligne 816 CadreMain.java Global.nom_fichier = " + Global.nom_fichier);
if (Global.nom_fichier != null) {
faits = "Data file path:" + Global.nom_fichier + s + s;
faits = faits + "Number of observed data (years): " + Data.getNbYears() + s;
faits = "Data file path:" + Global.nom_fichier + s + s;
faits = faits + "Time interval: " + Global.TimeStepData + " year" + s;
faits = faits + "Number of observed data (" + Global.TimeStepData$ + "s): " + Data.getNbYears() + s;
Global.temp=Global.RangeEffort();
faits = faits + "The relative range of fishing effort variation is " + nf.format(Global.temp*100) + "%" + s + s;
faits = faits + "Relative range of fishing effort variation: " + nf.format(Global.temp*100) + "%" + s + s;
//System.out.println("Flag (makeFaits()) ligne 823 CadreMain.java Global.envir_preponderant = " + Global.envir_preponderant + " Global.environmental_influence = " + Global.environmental_influence);
//WARNING: THE UPDATE OF THE COMMENTS RELATIVE TO THE PREDOMINENCE OF V OR E ON CPUE
//AS WELL AS THE COMMENTS RELATIVE TO TYPE OF ENVIRONMENTAL INFLUENCE AND TO THE
......
......@@ -57,14 +57,23 @@ public class CadreMain_HowToBox extends JDialog implements ActionListener {
jTextAreaCopyRight.setText(
"HOW TO GET STARTED:\n\n" +
"You need first open a data file containing your data in four columns in a csv format " +
"using semicolons as separators. The heading of the columns are: Years;Catches;Effort;Environment. " +
"Historical files of CLIMPROD had the extension .CLI and the name of the second column was " +
"'Production'. You can still use directly those old files including the EXAMPLE.CLI file available " +
"in your CLIMPROD folder. If you need to create a new data " +
"using semicolons (;) as separators. The heading of the columns are: Year/season;Catches;Effort;Environment. " +
"Please note that from an ecological point of view it is often better to consider that the start of the " +
"fishing season is not the 1st of January and the same applied for your environmental variable. " +
"If the environment influences the catchability, the fishery and environmental values in a row must cover " +
"roughly the same months of the year (the higher the autocorrelations in series are, the rougher can be the matching). " +
"Furthermore, if there are several spawning seasons per year, your time interval can be shorter than " +
"12 months. In that case, please entre decimal values of years (e.g. 2000.0 and 200.5 for two semestral " +
"seasons). Please do not incorporate artificial lag between the fishery and environmental data in the same row.\n\n" +
"Historical files of CLIMPROD had the extension .CLI and the names of the first and second columns were " +
"'Years' and 'Production' respectively. You can still use directly those old files including the EXAMPLE.CLI " +
"file available in your CLIMPROD folder. If you need to create a new data " +
"file you can either do it by using the sub-menu 'Create a new CLIMPROD data file' in the " +
"main menu 'File', or create it using a spreadsheet software (e.g. Excel, OpenOffice Calc) " +
"and save it under the .csv format. You will be able to import directly this .csv file in " +
"CLIMPROD but you can also choose to modify its extension in .CLI.\n\n" +
"and save it under the .csv format using semicolons as separators. You will be able to import directly " +
"this .csv file in CLIMPROD but you can also choose to modify its extension in .CLI.\n\n" +
"After opening a data file, CLIMPROD will spread out your entry data plus the computed CPUE, and " +
"display tables of basic statistics on the four variables. From this point you can proceed in two " +
"different ways:\n\n1) You can make use of the sub-menu 'Select the appropriate model and fit it' in " +
......@@ -77,13 +86,14 @@ public class CadreMain_HowToBox extends JDialog implements ActionListener {
"models including an environmental variable. Before doing this you can explore yourself your data " +
"set using the first three sub-menus of the 'Plots & graphs' main menu. After fitting a model, you " +
"will be able to display additional graphs related to the validation of the model.\n\n" +
"At the end of any of the two ‘Modelization’ options you will be able to use the ‘Display the results " +
"tables’ related to modelization and validation. If the model was validated, you will also access to " +
"the sub-menu ‘Intent prediction (allowed if good jackknife test)’. In any case you will be allowed to build and display a " +
"history html & graphs folder by using the corresponding sub-menu in the 'Files' main menu.\n\n");
jTextAreaCopyRight.setLineWrap(true);
jTextAreaCopyRight.setWrapStyleWord(true);
jTextAreaCopyRight.setPreferredSize(new Dimension(610, 610));
jTextAreaCopyRight.setPreferredSize(new Dimension(890, 610));
jTextAreaCopyRight.setEditable(false);
jTextAreaCopyRight.setMargin(new Insets(5, 5, 5, 5));
jTextAreaCopyRight.setFont(new java.awt.Font("Serif", 0, 14)); // Fenetre Help ->"How to get started" du menu principal. Avant 0, 11. Modif 2020.
......
......@@ -144,7 +144,7 @@ public class Cadre_ModeleDirect extends JFrame {
});
jScrollPane2.setBorder(new TitledBorder(BorderFactory.createEtchedBorder(Color.white, new Color(142, 142, 142)), "Selected model information"));
jPanBiologie.setBorder(new TitledBorder(BorderFactory.createEtchedBorder(Color.white, new Color(142, 142, 142)), "Stock characteristics"));
jPanBiologie.setBorder(new TitledBorder(BorderFactory.createEtchedBorder(Color.white, new Color(142, 142, 142)), "Age structure (in number of past year-classes, being them seasonal or annual)"));
jPanBiologie.setLayout(new GridLayout(4, 2));
jlblExploitedYears.setText("Number of significantly exploited years classes");
jlblRecrutement.setText("Age at recruitment");
......
......@@ -27,7 +27,7 @@ public class CreateNewFile extends JDialog{
private JButton cmdCancel=new JButton("Cancel (ESC)");
private JScrollPane jScrollPane1 = new JScrollPane();
private JTable jTableData = new JTable();
private String[] title$={"Years","Catches","Effort","Environment"};
private String[] title$={"Year/season","Catches","Effort","Environment"};
private Object[][] data$=new String[100][4];
private JTable jTable1 = new JTable();
......
......@@ -38,7 +38,7 @@ public class Data {
existFile = false;
try {
String[] dataLine;
String[] fieldNames = {"Years", "Catches", "Effort", "Environment"};
String[] fieldNames = {"Year/season", "Catches", "Effort", "Environment"};
String[] NextToken$ = {"", "", "", ""}; // In order to get access to t.nextToken().trim() without incrementing t (Modif. 2020)
ReadFileText rft = new ReadFileText(file);
dataLine = rft.getLines();
......@@ -53,7 +53,8 @@ public class Data {
for (int i = 0; i < 4; i++) {
NextToken$[i] = t.nextToken().trim();
if ((NextToken$[1]).equals("Production")) NextToken$[1] = "Catches"; // In order to avoid error for historical .CLI files where "Production" was used instead of "Catches" (Modif. 2020)
if ((NextToken$[i]).equals(fieldNames[i]) == false) {
if ((NextToken$[0]).equals("Years")) NextToken$[0] = "Year/season"; // In oreder to make clearer the use of fishing or environmental seasons
if ((NextToken$[i]).equals(fieldNames[i]) == false) {
throw new OnError("Invalid data file (incorrect column field name(s)).");
}
}
......@@ -71,7 +72,7 @@ public class Data {
// System.out.println();
}
}
existFile = true;
existFile = true;
init_val();
statistiques();
makePlot(false);
......@@ -144,7 +145,7 @@ public class Data {
* @return un double[], ou null si fichier non valide
*/
public static double[] getPue() {
if (existFile) {
if (existFile) {
return pue;
} else {
return null;
......@@ -365,13 +366,24 @@ public class Data {
**********************************************************/
double minx = Stat1.min(Data.year);
Global.TimeStepData = Data.year[1] - Data.year[0]; // Time step of the row data (default Year, decimal intervals mean seasonal data
if (Global.TimeStepData == 1.0) {
Global.TimeStepData$ = "Full year or single annual season";
}
else {
Global.TimeStepData$ = "Season";
for (int i = 0; i < 5; i++) { Global.titreSx[i] = "Season";}
for (int i = 13; i < 15; i++) { Global.titreSx[i] = "Season";}
for (int i = 17; i < 22; i++) { Global.titreSx[i] = "Season";}
}
PlotSerie[] ps = new PlotSerie[4];
ps[0] = new PlotSerie("x", Data.year, "y", Data.yexp);
ps[1] = new PlotSerie("x", Data.year, "y", Data.pue);
ps[2] = new PlotSerie("x", Data.year, "y", Data.f);
ps[3] = new PlotSerie("x", Data.year, "y", Data.v);
double RangeYear=Global.RangeYear();
System.out.println("RangeYear = " + RangeYear);
System.out.println("RangeSeason(s) = " + RangeYear);
for (int i = 0; i < 4; i++) {
Global.timePlot[i] = new Plot();
ps[i].setFigure(2);
......@@ -379,7 +391,8 @@ public class Data {
Global.timePlot[i].setTitreGraphique(Global.titreG[i]);
Global.timePlot[i].setTitreX(Global.titreSx[i]);
Global.timePlot[i].setTitreY(Global.titreSy[i]);
Global.timePlot[i].setDecimalsurX(0); // Years
if (Global.TimeStepData == 1.0) Global.timePlot[i].setDecimalsurX(0); // Time step of the row data (default Year, decimal intervals mean seasonal data
else Global.timePlot[i].setDecimalsurX(1);
Global.timePlot[i].setMinAxeX(minx - 1);
if (RangeYear < 20) Global.timePlot[i].setpasX(1.0d);
else if (RangeYear < 30) Global.timePlot[i].setpasX(2.0d);
......@@ -600,7 +613,7 @@ public class Data {
if (!existFile) {
return;
}
String[] title$ = {"Years ", "Catches", "CPUE", "Effort (E)", "Envir. (V)"};
String[] title$ = {"Year/season", "Catches", "CPUE", "Effort (E)", "Envir. (V)"};
dataTable = new String[nbData + 1][5];
// DecimalFormat nf0= new DecimalFormat(" 0;-0");
// DecimalFormat nf= new DecimalFormat(" 0.000000;-0.000000");
......
......@@ -37,10 +37,12 @@ public class Global {
static JFrame CadreMain;
/**
* ******* Hypothèses de base *******
* ******* Hypothèses de base & données*******
*/
static double temp;
static double TimeStepData; // Time step of the row data (default Year, decimal intervals mean seasonal data
static String TimeStepData$;
static boolean range_data; // Does the relative range of observed value<0.4
static String double_click; // Averstissement usage double click. Rajout 2020
static int dbl_click;
......@@ -154,7 +156,7 @@ public class Global {
//static Hashtable htPlot=new Hashtable();
//WARNING: NE PAS REMPLACER R2 PAR R² DANS LIGNES SUIVANTES CAR SINON NON DE FICHIER PAR RECONNU PAR HTML.
static String[] titreG = {"Y Time Plot (unlagged)", "CPUE Time Plot (unlagged)", "E Time Plot (unlagged)", "V Time Plot (unlagged)", "E Distribution (unlagged)", "V Distribution (unlagged)", "Y Distribution (unlagged)", "CPUE Distribution (unlagged)", "Y vs E (unlagged)", "Y vs V (unlagged)", "CPUE vs E (unlagged)", "CPUE vs V (unlagged)", "CPUE versus E (E weighted if relevant)", "CPUE versus V (V lagged if relevant)","E versus V (unlagged)", "Observed and Fitted CPUE (lag effect if relevant)", "Time Plot of residual CPUE (lag effect if relevant)", "Residual CPUE versus E (E weighted if relevant)", "Residual CPUE versus V (V lagged and weighted if relevant)", "a (%) Time Plot (lag effect if relevant)", "b (%) Time Plot (lag effect if relevant)", "c (%) Time Plot (lag effect if relevant)", "d (%) Time Plot (lag effect if relevant)", "R2 (%) Time Plot", "Function Y=f(V & E) (lagged if relevant)", "Function Y=f(V & E) (E weighted if relevant)", "Function CPUE=f(V & E)(E weighted if relevant)", "Function CPUE=f(V & E) (E weighted if relevant)", "MSY versus V", "MSE versus V"};
static String[] titreSx = {"Year", "Year", "Year", "Year", "Classes", "Classes", "Classes", "Classes", "Effort (E)", "Environment (V)", "Effort (E)", "Environment (V)", "Environment (V)", "Year", "Year", "Effort (E)", "Environment (V)", "Year", "Year", " Year", "Year", "Year", "Weighted effort (E)", "Weighted effort (E)", "Weighted effort (E)", " Weighted effort (E)", "Environment (V)", "Environment (V)"};
static String[] titreSx = {"Year (or single annual season)", "Year (or single annual season)", "Year (or single annual season)", "Year (or single annual season)", "Classes", "Classes", "Classes", "Classes", "Effort (E)", "Environment (V)", "Effort (E)", "Environment (V)", "Environment (V)", "Year (or single annual season)", "Year (or single annual season)", "Effort (E)", "Environment (V)", "Year (or single annual season)", "Year (or single annual season)", " Year (or single annual season)", "Year (or single annual season)", "Year (or single annual season)", "Weighted effort (E)", "Weighted effort (E)", "Weighted effort (E)", " Weighted effort (E)", "Environment (V)", "Environment (V)"};
static String[] titreSy = {"Catches (Y)", "CPUE ", "Effort (E)", "Environment (V)", "Nb", "Nb", "Nb", "Nb", "Catches (Y)", "Catches (Y)", "CPUE", "CPUE", "CPUE", "CPUE", " Residual", "Residual", "Residual", "a (%)", "b (%)", "c (%)", "d (%)", "R² (%)", "Catches (Y)", "Catches (Y)", "CPUE", "CPUE", "MSY", "MSE"};
static Plot[] timePlot = new Plot[4];
......@@ -172,7 +174,6 @@ public class Global {
static HashMap<Integer, String> warningDic = new HashMap<Integer, String>();
public static void init() {
if (CadreModeleDirect != null) {
CadreModeleDirect.dispose();
}
......
......@@ -17,14 +17,14 @@
14;15;15;39;1;abnormal_points_scatt;Do you see outlier points?; outlier.hlp ;;;;;;;;;;;
15;16;16;50;1;effort_increasing;Constantly increasing effort?; increasf.hlp ;;;;;;;;;;;
16;17;17;40;1;independance;Are the two variables dependent?; independ.hlp ;;;;;;;;;;;
17;18;18;-1;1;nb_classes_exploitees;Number of significantly exploited year-classes; nbclass.hlp ;1;2;3;4;5;6;7;8;>8;;
17;18;18;-1;1;nb_classes_exploitees;Number of significantly exploited year-classes (or seasonal-classes if more than a single one per year); nbclass.hlp ;1;2;3;4;5;6;7;8;>8;;
18;56;19;-1;1;envir_preponderant;Is the influence of the environment on CPUE more important than the influence of fishing effort?; fishmore.hlp ;;;;;;;;;;;
19;20;-1;48;1;decreasing_relationship;Does this plot appear to be decreasing?; decreas.hlp ;;;;;;;;;;;
20;39;21;17;1;obviously;Does this plot look obviously linear?; obvious.hlp ;;;;;;;;;;;
21;39;22;18;1;pessimiste;Do you have any (additional) reason to expect a highly unstable behaviour or a collapse of the stock?; pessimis.hlp ;;;;;;;;;;;
22;39;23;19;1;stock_deja_effondre;Did the stock already collapse or did it exhibit drastic decrease(s) in catches?; collapse.hlp ;;;;;;;;;;;
23;24;24;-1;1;lifespan;What is the life span of the species?; lifespan.hlp ;1;2;3;4;5;6;7;8;9;10;>10
24;25;25;-1;1;rapport_vie_exploitee_inferieur_deux;Is the ratio (lifespan/number of exploited year-classes) lower than 2?; ratio.hlp ;;;;;;;;;;;
24;25;25;-1;1;rapport_vie_exploitee_inferieur_deux;Is the ratio (lifespan/number of exploited year-classes) or (lifespan/seasonal-classes) if more than a single one per year lower than 2?; ratio.hlp ;;;;;;;;;;;
25;26;26;-1;1;reserves_naturelles;Are there natural protected areas for the stock or constantly inacessible adult biomass?; protect.hlp ;;;;;;;;;;;
26;27;27;-1;1;premiere_reproduction_avant_recrutement;Are there one or several non negligible spawnings before recruitment?; firstspa.hlp ;;;;;;;;;;;
27;28;28;-1;1;fecondite_faible;Is the fecundity of the species very low (sharks mammals etc.)?; fecundit.hlp ;;;;;;;;;;;
......@@ -50,16 +50,16 @@
48;104;49;17;1;linear_relationship;Does this plot look linear; linear.hlp ;;;;;;;;;;;
49;104;104;-1;1;monotonic_relationship;Does this plot look monotonic?; monotoni.hlp ;;;;;;;;;;;
104;54;51;59;1;;;;;;;;;;;;;;
51;52;52;-1;1;recruitment_age;Age at recruitment; Agerec.hlp ;1;2;3;4;5;6;7;8;>8;;
52;53;53;-1;1;begin_influence_period;Age at the begining of environmental influence; begin.hlp ;0;1;2;3;4;5;6;7;8;>8;
53;102;102;-1;1;end_influence_period;Age at the end of environmental influence; end.hlp ;0;1;2;3;4;5;6;7;8;>8;
51;52;52;-1;1;recruitment_age;Age at recruitment (expressed in number of past year-classes, being them seasonal or annual); Agerec.hlp ;1;2;3;4;5;6;7;8;>8;;
52;53;53;-1;1;begin_influence_period;Age at the begining of environmental influence (expressed in number of past year-classes, being them seasonal or annual); begin.hlp ;0;1;2;3;4;5;6;7;8;>8;
53;102;102;-1;1;end_influence_period;Age at the end of environmental influence (expressed in number of past year-classes, being them seasonal or annual); end.hlp ;0;1;2;3;4;5;6;7;8;>8;
102;47;54;56;1;;;;;;;;;;;;;;
47;54;54;57;1;cpue_sous_sur_production;May the stock present large fluctuations in abundance due to the environment when overexploited?; additif.hlp ;;;;;;;;;;;
54;95;55;4;2;;;;;;;;;;;;;;
55;95;-3;5;2;;;;;;;;;;;;;;
56;57;57;-1;1;recruitment_age;Age at recruitment; Agerec.hlp ;1;2;3;4;5;6;7;8;9;10;>10
57;58;58;-1;1;begin_influence_period;Age at the begining of environmental influence; begin.hlp ;0;1;2;3;4;5;6;7;8;>8;
58;59;59;-1;1;end_influence_period;Age at the end of environmental influence; end.hlp ;0;1;2;3;4;5;6;7;8;>8;
56;57;57;-1;1;recruitment_age;Age at recruitment (expressed in number of past year-classes, being them seasonal or annual); Agerec.hlp ;1;2;3;4;5;6;7;8;9;10;>10
57;58;58;-1;1;begin_influence_period;Age at the begining of environmental influence (expressed in number of past year-classes, being them seasonal or annual); begin.hlp ;0;1;2;3;4;5;6;7;8;>8;
58;59;59;-1;1;end_influence_period;Age at the end of environmental influence (expressed in number of past year-classes, being them seasonal or annual); end.hlp ;0;1;2;3;4;5;6;7;8;>8;
59;62;60;27;1;linear_relationship;Does_this_plot_look_linear?; linear.hlp ;;;;;;;;;;;
60;62;63;-1;1;monotonic_relationship;Does this plot look monotonic?; monotoni.hlp ;;;;;;;;;;;
61;64;62;26;1;;;;;;;;;;;;;;
......@@ -72,7 +72,7 @@
69;87;70;18;1;pessimiste;Do you have any (additional) reason to expect highly unstable behaviour or collapse of the stock?; pessimis.hlp ;;;;;;;;;;;
70;87;71;19;1;stock_deja_effondre;Did the stock already collapse or exhibit drastic decrease(s) in catches?; collapse.hlp ;;;;;;;;;;;
71;72;72;-1;1;lifespan;What is the life span of the species?; lifespan.hlp ;1;2;3;4;5;6;7;8;9;10;>10
72;73;73;-1;1;rapport_vie_exploitee_inferieur_deux;Is the ratio (lifespan/number of exploited year-classes) lower than 2?; ratio.hlp ;;;;;;;;;;;
72;73;73;-1;1;rapport_vie_exploitee_inferieur_deux;Is the ratio (lifespan/number of exploited year-classes) or (lifespan/seasonal-classes) if more than a single one per year lower than 2?; ratio.hlp ;;;;;;;;;;;
73;74;74;-1;1;reserves_naturelles;Are there natural protected areas for the stock or constantly inacessible adult biomass?; protect.hlp ;;;;;;;;;;;
74;75;75;-1;1;premiere_reproduction_avant_recrutement;Are there one or several non negligible spawnings before recruitment?; firstspa.hlp ;;;;;;;;;;;
75;76;76;-1;1;fecondite_faible;Is the fecundity of the species very low (sharks mammals etc.)?; fecundit.hlp ;;;;;;;;;;;
......
Age at recruitment?
Age at recruitment (expressed in number of past year-classes, being them seasonal or annual)?
Please select the mean age at recruitment, without taking into account
the exceptionally young individuals (at least 50% of the year-class must
be recruited).
The limits of year 1 are the spawning time (or birth date) and the first
birthday one year later. The limits of year 2 are the first and
the second birthday, etc. 
\ No newline at end of file
If there is a single year-class per 12-month intervals, the age 1 limits are
the spawning date (or birth date) and the first birthday, one
year later. Age 2 limits are the first and the secondbirthday, etc.
If there is are several year-classes per 12-month intervals, the age 1 limits
are the spawning date (or birth date) of a given year-class and the spawning
date of the next year-class a few months later, a laps of time which corresponds
to the time intervals of your dataset. Age 2 limits are one and two time intervals,
etc. 
\ No newline at end of file
Age at the beginning of environmental influence?
Age at the beginning of environmental influence (expressed in number of past year-classes, being them seasonal or annual)?
Please select the appropriate age at which the influence of environment begins.
Enter 0 if the influence begins one year before spawning, i.e., during gonad
maturation. Age 1 limits are the spawning time (or birth date) and the first birthday,
one year later. Age 2 limits are the first and the second birthday, etc.
Enter 0 if the influence begins before spawning, i.e., during gonad maturation.
If there is a single year-class per 12-month intervals, the age 1 limits are
the spawning date (or birth date) and the first birthday, one
year later. Age 2 limits are the first and the secondbirthday, etc.
If there is are several year-classes per 12-month intervals, the age 1 limits
are the spawning date (or birth date) of a given year-class and the spawning
date of the next year-class a few months later, a laps of time which corresponds
to the time intervals of your dataset. Age 2 limits are one and two time intervals,
etc.

\ No newline at end of file
Age at the end of environmental influence?
Age at the end of environmental influence (expressed in number of past year-classes, being them seasonal or annual)?
Please select the appropriate age at which the influence of environment ends.
Age 1 limits are the spawning time (or birth date) and the first birthday, one
If there is a single year-class per 12-month intervals, the age 1 limits are
the spawning date (or birth date) and the first birthday, one
year later. Age 2 limits are the first and the secondbirthday, etc.
If the total duration of environmental influence is one year or less,
enter the same number that you entered to answer the previous question,
If there is are several year-classes per 12-month intervals, the age 1 limits
are the spawning date (or birth date) of a given year-class and the spawning
date of the next year-class a few months later, a laps of time which corresponds
to the time intervals of your dataset. Age 2 limits are one and two time intervals,
etc.
If the total duration of environmental influence is lower than or equal to one time
interval , enter the same number that you entered to answer the previous question,
relative to the age at the beginning of environmental influence. 
\ No newline at end of file
Number of significantly exploited year-classes?
Number of significantly exploited year-classes (or seasonal-classes if more than one per year)?
Please select the number of year-classes significantly exploited by the fishery.
If there are more than one recruitment per year and that your dataset is organized
to reflect this (one row per seasonal-class), please consider the number of significantly
exploited seasonal-classes in your answer.
An arbitrary threshold of a contribution to 5% of the catches in weight can be
used to count the number of year-classes. Usually this eliminate part of the
younger and oldest individuals.
used to consider a year-class or seasonal-class as significantly exploited.
Usually this eliminate part of the younger and oldest individuals.

\ No newline at end of file
Is the ratio (life span/number of exploited year-classes) lower than 2?
Is the ratio (lifespan/number of exploited year-classes) or (lifespan/seasonal-classes) if more than a single one per year lower than 2?
If you answer YES the program will receive an argument in favour of
an exponential model because in such cases the stock is supposed to be
......
......@@ -15,10 +15,10 @@ the influences of the environment on abundance and catchability have
opposite signs. In practice, owing to the transition prediction
approach and the simplifications retained in the formula, this
particular case cannot be reasonably modelized using CLIMPROD.
In case of identical signs of environmental influences, the only
acceptable cases are obtained when the weighting factors are the
In case of identical signs of environmental influences, the most
favorable cases are obtained when the weighting factors are the
same for environmental influence on abundance and on catchability.
This condition is respected when the environmentalinfluence on
This condition is fulfiled when the environmental influence on
abundance concerns all the exploited year-classes.
After fitting the model, if the coefficient b is not significantly
......
......@@ -15,11 +15,11 @@ influences of the environment on abundance and catchability have
opposite signs. In practice, owing to the transition prediction
approach and the reparameterization retained in the formula, this
particular case cannot be reasonably modelized using the present
version of CLIMPROD. In the case of identical signs of environmental
influences, the only acceptable situation is when the weighting
factors are the same for environmental influence on abundance and
on catchability. This condition is respected when the environmental
influence on abundance concerns all the exploited year-classes.
version of CLIMPROD. In case of identical signs of environmental
influences, the most favorable cases are obtained when the weighting
factors are the same for environmental influence on abundance and on
catchability. This condition is fulfiled when the environmental influence
on abundance concerns all the exploited year-classes.
If, after fitting the model, the coefficients b and d have opposite
signs, this may correspond to two different cases:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment