From 74245613fdf1a1ccbdbb94b318b3fd8218bf0112 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Charybdis=29?=
 <stephane.adjemian@univ-lemans.fr>
Date: Sat, 17 May 2014 16:38:55 +0200
Subject: [PATCH] Test that each dseries object contains only one variable.

---
 matlab/utilities/dseries/from.m | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/matlab/utilities/dseries/from.m b/matlab/utilities/dseries/from.m
index 5d1a17b4e3..e0393d4c22 100644
--- a/matlab/utilities/dseries/from.m
+++ b/matlab/utilities/dseries/from.m
@@ -143,7 +143,7 @@ number_of_variables = size(leadlagtable,1);
 
 % Test that all the involved variables are available dseries objects. Also check that
 % these time series are defined over the time range given by d1 and d2 (taking care of
-% the lags and leads).
+% the lags and leads) and check that each object is a singleton
 for i=1:number_of_variables
     current_variable = leadlagtable{i,1};
     try
@@ -154,6 +154,10 @@ for i=1:number_of_variables
     if ~isdseries(var)
         error(['dseries::from: Variable ' current_variable ' is not a dseries object!'])
     else
+        if var.vobs>1
+            msg = sprintf('dseries::from: Object %s must contain only one variable!\n',current_variable);
+            error(msg)
+        end
         if d1<var.dates(1)+leadlagtable{i,2}
             msg = sprintf('dseries::from: Initial date of the loop (%s) is inconsistent with %s''s range!\n',char(d1),current_variable);
             msg = [msg, sprintf('               Initial date should be greater than or equal to %s.',char(var.dates(1)+leadlagtable{i,2}))];
-- 
GitLab