Simulink Implementation of a Hydrologic Model: A Tank Model Case Study

: Simulink, an extension of MATLAB, is a graphics-based model development environment for system modeling and simulation. Simulink’s user-friendly features, including block (data process) and arrow (data transfer) objects, a large number of existing blocks, no need to write codes, and a drag and drop interface, provide modelers with an easy development environment. In this study, a Tank model was developed using Simulink and applied to a rainfall-runoff simulation for a study watershed to demonstrate the potential of Simulink as a tool for hydrological analysis. In the example given here, the Tank model was extended by two sub-modules representing evapotranspiration and storage-runoff distribution. In addition, model pre- and post-processing, such as input data preparation and results plotting, was carried out in MATLAB. Moreover, model parameters were calibrated using MATLAB optimization tools without any additional programming for linking the calibration algorithms and the model. The graphical representation utilized in the Simulink version of the Tank model helped us to understand the hydrological interactions described in the model, and the modular structure of the program facilitated the addition of new modules and the modiﬁcation of existing modules as needed. From the study, we found that Simulink could be a useful and convenient environment for hydrological analysis and model development.


Introduction
The rainfall-runoff process is highly nonlinear, time varying, and spatially heterogeneous; thus, hydrological analysis frequently uses simulation models to describe and predict watershed responses to rainfall events based on mathematical and physical knowledge. Hydrological models are also commonly used to explore options to manage water resources at point, field, and watershed scales. Accordingly, water management studies have led to the development of numerous hydrologic models [1,2]. Many distinct model-building paradigms have been proposed depending on the consideration of spatial variability, ranging from lumped models, such as the Tank model [3], Hydrologiske Byrån avdeling för Vattenbalans (HBV) [4], HYdrological MODel (HYMOD) [5], and Xinanjiang [6] to physical-based distributed models, such as Systeme Hydrologique Europeen (SHE) [7], AGricultural Non-Point Source Pollution Model (AGNPS) [8], and Areal Non point Source The preparation of input data and the output of simulation results are conducted in a MATLAB environment. It is convenient to use various packages that are embedded in MATLAB or shared online. Users also have access to various statistical analysis and optimization methods, such as artificial neural network (ANN), genetic algorithm (GA), simulated annealing (SA), pattern search (PS), shuffled complex evolution (SCE-UA), and particle swarm optimization (PSO), without additional programming.

The Tank Model
The Tank model has been widely used in rainfall-runoff modeling owing to its computational and conceptual simplicity and its forecasting accuracy [32][33][34][35]. The Tank model includes interconnections between variations in the number of tanks, side outlets, and bottom outlets, the height of the side-outlets, and the initial storage volume (Figure 2). Unlike some lumped models with parallel tanks such as HYMOD [36,37], the structure of which is conceptually realistic but difficult to observe, the movement of water between the various tanks in the Tank model always takes place in a descending direction with vertical tanks, and the total storage of the tanks represents the watershed storage. Accordingly, the structure of the Tank model is easily understandable. For a model with three tanks , outputs through the side outlets of the first tank (located at the top), second tank, and third tank (located at the bottom) represent surface runoff, intermediate runoff, and base flow, respectively [32,33]. The governing equations for the 3-Tank model are as follows: The preparation of input data and the output of simulation results are conducted in a MATLAB environment. It is convenient to use various packages that are embedded in MATLAB or shared online. Users also have access to various statistical analysis and optimization methods, such as artificial neural network (ANN), genetic algorithm (GA), simulated annealing (SA), pattern search (PS), shuffled complex evolution (SCE-UA), and particle swarm optimization (PSO), without additional programming.

The Tank Model
The Tank model has been widely used in rainfall-runoff modeling owing to its computational and conceptual simplicity and its forecasting accuracy [32][33][34][35]. The Tank model includes interconnections between variations in the number of tanks, side outlets, and bottom outlets, the height of the side-outlets, and the initial storage volume ( Figure 2). Unlike some lumped models with parallel tanks such as HYMOD [36,37], the structure of which is conceptually realistic but difficult to observe, the movement of water between the various tanks in the Tank model always takes place in a descending direction with vertical tanks, and the total storage of the tanks represents the watershed storage. Accordingly, the structure of the Tank model is easily understandable. For a model with three tanks (3-Tank), outputs through the side outlets of the first tank (located at the top), second tank,  [32,33]. The governing equations for the 3-Tank model are as follows: where i is tank order, j is side-outlet order, t is time (day), n is the number of tanks, m is the number of side outlets for each tank, q ij is runoff for the jth side outlet in the ith tank, Q t is total runoff at time t, a ij is the side-outlet coefficient for the jth side outlet in the ith tank, ST i,t is the storage of the ith tank (mm), h ij is the height of side outlet for the jth side outlet in the ith tank (mm), I i,t is the infiltration in the ith tank (mm), and b i is the bottom-outlet coefficient for the ith tank. For the next time step t + 1, the ST i,t in the tanks are calculated as follows: where P t+1 is the precipitation at time t + 1 (mm), and ET i,t+1 is the actual evapotranspiration in the ith tank at time t + 1 (mm). The ET i,t is calculated by subtracting the evapotranspiration in the upper tanks from the total actual evapotranspiration (ET a,t ): We set the parameter ranges in the Tank model (Table 1) to the minimum and maximum values of the calibrated parameters established in [38,39], considering the watershed characteristics of Korea for 11 and 10 sites, respectively. The outflow from the third tank represents base flow, as described above, but if the water depth of the third tank does not reach the height of the side outlet (h 3 ), base flow does not occur. Therefore, we set the height of the third tank outlet to zero so that base flow could occur continuously (Table 1). where i is tank order, j is side-outlet order, t is time (day), n is the number of tanks, m is the number of side outlets for each tank, ij q is runoff for the j th side outlet in the i th tank, t Q is total runoff at time t , ij a is the side-outlet coefficient for the j th side outlet in the i th tank, where 1 t P  is the precipitation at time We set the parameter ranges in the Tank model (Table 1) to the minimum and maximum values of the calibrated parameters established in [38,39], considering the watershed characteristics of Korea for 11 and 10 sites, respectively. The outflow from the third tank represents base flow, as described above, but if the water depth of the third tank does not reach the height of the side outlet ( 3 h ), base flow does not occur. Therefore, we set the height of the third tank outlet to zero so that base flow could occur continuously (Table 1).

Watershed Evapotranspiration
Lysimeter [40] and imaging techniques [41] yield the highest precision for evapotranspiration calculations, but these techniques are monetarily expensive [42]. Instead, the crop coefficient (K c ), the soil water stress coefficient (K s ), and potential evapotranspiration (ET p ) can be combined to calculate the actual watershed evapotranspiration as follows [39]: The procedures for the calculation of ET p , K c , and K s are described below.

Potential Evapotranspiration
There are a number of methods used to estimate ET p . These methods can generally be classified as temperature-based [43,44], radiation-based [45,46], or a combination of the two [47][48][49], and they vary in terms of data requirements and accuracy. At present, the Food and Agriculture Organization of the United Nations (FAO) Penman-Monteith (PM) approach is the standard method for evapotranspiration (ET) estimation in agriculture [48]. The PM approach has been applied in several regions of the world, but it does require a great number of parameters for the estimation of ET p [42]. Fortunately, these parameters are readily obtainable in Korea, as climate data (including daily maximum and minimum temperature, relative humidity, wind speed, and solar radiation) are provided in real time at 97 weather stations by the Korean Meteorological Administration. Thus, we chose the PM approach to simulate potential evapotranspiration.

Crop Coefficient
The crop coefficient varies primarily with the crop species and growth characteristics [48,50]. Therefore, the value of the crop coefficient for a specific crop can usually be obtained from the literature based on its growing season and planted area. In this study, we calculated area-weighted crop coefficients (K c,avg ) as follows: where K c,l is the K c for crop l, and A l is the planted area for crop l. Table 2 presents the crop coefficients used for each month in the PM method according to land-use type (forest, paddy, upland, and others). The forest crop coefficients are calculated by dividing the monthly ET a , which was observed over 4 years for two Korean forests [51], by ET p , which was simulated using the PM approach. The paddy crop coefficients were converted on a monthly basis from the 10-day values developed for Korean rice in [52]. The monthly upland crop coefficients were calculated using literature-recommended cultivation periods for major crops [53] and crop coefficients [48]. A coefficient of 0.20, which was proposed for bare soil [48], was applied during the non-cultivation period. The upland coefficients are area-weighted according to the cultivated area of the major crops. A crop coefficient of 0.20 was applied for the other land-use types, as they were assumed to resemble bare soil.

Soil Water Stress Coefficient
The following equation is used to calculate K s at the watershed scale [39]: As Equation (9) indicates, the value of K s is determined from the total storage of the first, second, and third tanks (i.e., the total storage of the watershed). The parameter α is related to watershed characteristics. According to [54], α has been reported to vary from 0.1 to 0.5, depending on the characteristics of the watershed, with optimization results using the water balance model for the estimation of watershed evapotranspiration. The α and K s parameters are positively correlated. Hence, an increase in α increases ET a , decreases watershed storage, and subsequently decreases total runoff. Figure 3 shows the results of the 3-Tank model developed using Simulink. The model consists of a watershed evapotranspiration module and a 3-Tank module. As shown in Figure 3, ET a is calculated based on ET p , K c , and K s , and then the results, along with rainfall observations, are used as input in the 3-Tank module. The output of the 3-Tank module consists of watershed runoff and storage. As shown in Equation (7), total storage is used as input data to calculate K s for the following day. The simulated results were exported through the "To Workspace" block to the MATLAB workspace, where the results could be analyzed using various embedded statistical methods and displayed in graph format using the "Scope" block. More detailed descriptions of the watershed evapotranspiration module and the 3-Tank module will be given in the following sections. The following equation is used to calculate s K at the watershed scale [39]:

Simulink-Tank Model Structure
As Equation (9) indicates, the value of s K is determined from the total storage of the first, second, and third tanks (i.e., the total storage of the watershed). The parameter  is related to watershed characteristics. According to [54],  has been reported to vary from 0.1 to 0.5, depending on the characteristics of the watershed, with optimization results using the water balance model for the estimation of watershed evapotranspiration. The  and s K parameters are positively correlated. Hence, an increase in  increases a ET , decreases watershed storage, and subsequently decreases total runoff.  (7), total storage is used as input data to calculate s K for the following day. The simulated results were exported through the "To Workspace" block to the MATLAB workspace, where the results could be analyzed using various embedded statistical methods and displayed in graph format using the "Scope" block. More detailed descriptions of the watershed evapotranspiration module and the 3-Tank module will be given in the following sections.  The module inputs are comprised of: local climatic condition data, including temperature, humidity, and wind speed, which are loaded into the MATLAB workspace for the calculation of p ET ; land use area, which is employed in the computation of monthly c K ; and total water storage for the previous day simulated from the 3-Tank module, which is used in the calculation of s K . Then,  The module inputs are comprised of: local climatic condition data, including temperature, humidity, and wind speed, which are loaded into the MATLAB workspace for the calculation of ET p ; land use area, which is employed in the computation of monthly K c ; and total water storage for the previous day simulated from the 3-Tank module, which is used in the calculation of K s . Then, the output of this module (ET a ) is calculated using Equation (7) and used as input data for the 3-Tank model. The simulated results for ET p and ET a are exported to the MATLAB workspace and graphically displayed.

Watershed Evapotranspiration Module
Although only the PM method was considered in this study for ET p simulation in a MATLAB/Simulink environment, it is also possible to use other methods, such as the Hargreaves equation, depending on the available data. The accuracy of streamflow simulation depends on ET p methods, so a more detailed explanation of this relationship can be found in [55]. Owing to the modular format of the Simlink-Tank, users can easily change ET p methods without changing the essential structure of the rainfall-runoff model. methods, so a more detailed explanation of this relationship can be found in [55]. Owing to the modular format of the Simlink-Tank, users can easily change p ET methods without changing the essential structure of the rainfall-runoff model.

3-Tank Module
The structure of the 3-Tank module, which can be mathematically expressed by Equations (1)-(6), can also be portrayed using blocks connections in Simulink as shown in Figure 5. The input for the 3-Tank module includes rainfall observations and the a ET from the watershed evapotranspiration module. Rainfall is added into the first tank, while evapotranspiration is subtracted from the first tank. If there is no water in the first tank, evapotranspiration is subtracted from the second tank; if there is no water in both the first and second tanks, evapotranspiration is subtracted from the third tank ( Figure 5). The storage of the first, second, and third tanks are calculated from rainfall, evapotranspiration, and infiltration, and the runoff for each tank is simulated using Equation (1). The total runoff for the watershed is calculated as the sum of the runoff from all tanks. As described in the previous section, infiltration is used as input data for simulating the storage for each tank for the following day, while total storage is used as input data for simulating s K .

3-Tank Module
The structure of the 3-Tank module, which can be mathematically expressed by Equations (1)-(6), can also be portrayed using blocks connections in Simulink as shown in Figure 5. The input for the 3-Tank module includes rainfall observations and the ET a from the watershed evapotranspiration module. Rainfall is added into the first tank, while evapotranspiration is subtracted from the first tank. If there is no water in the first tank, evapotranspiration is subtracted from the second tank; if there is no water in both the first and second tanks, evapotranspiration is subtracted from the third tank ( Figure 5). The storage of the first, second, and third tanks are calculated from rainfall, evapotranspiration, and infiltration, and the runoff for each tank is simulated using Equation (1). The total runoff for the watershed is calculated as the sum of the runoff from all tanks. As described in the previous section, infiltration is used as input data for simulating the storage for each tank for the following day, while total storage is used as input data for simulating K s . The hydrologic modeling community has recently been introduced to the flexible module-based modeling approach. This approach does not attempt to develop a "one-size-fits-all" model structure but instead calls for the consideration of multiple working hypotheses for a given modeling application [56]. The modular approach enables the analysis of multiple structures and/or model components in order to find the combination that best approximates the relevant aspects of watershed behavior. The main advantage of this approach is the reduction of structural uncertainty, which results in more robust model applications [57]. We believe that the flexible modeling approach is best conducted in Simulink, owing to its block-based development environment and copy-and-paste user interface. The optimal structure of the tank model, such as the number of tanks and the number of outflows, can be changed depending on watershed characteristics. In Simulink-Tank, performing modeling considering uncertainty according to the structure of the model is convenient because the structure can be easily and flexibly changed by copying and pasting the block based on the model developed in Figure 5. The hydrologic modeling community has recently been introduced to the flexible module-based modeling approach. This approach does not attempt to develop a "one-size-fits-all" model structure but instead calls for the consideration of multiple working hypotheses for a given modeling application [56]. The modular approach enables the analysis of multiple structures and/or model components in order to find the combination that best approximates the relevant aspects of watershed behavior. The main advantage of this approach is the reduction of structural uncertainty, which results in more robust model applications [57]. We believe that the flexible modeling approach is best conducted in Simulink, owing to its block-based development environment and copy-and-paste user interface. The optimal structure of the tank model, such as the number of tanks and the number of outflows, can be changed depending on watershed characteristics. In Simulink-Tank, performing modeling considering uncertainty according to the structure of the model is convenient because the structure can be easily and flexibly changed by copying and pasting the block based on the model developed in Figure 5.

Case Study
A case study was conducted for the Jinwangyo (JW) watershed in Korea to test the applicability of the Simulink-Tank ( Figure 6). The study watershed is located near Seoul, Korea. The watershed area is 201.5 km 2 , of which 68%, 8%, 10%, and 14% is comprised of forest, paddy, upland, and other land uses, respectively.
Hourly precipitation data from 2004 to 2014 were obtained at five stations operated by the Ministry of Land, Infrastructure, and Transport (MOLTM), and the average hourly precipitation was determined using the Thiessen polygon method. Daily weather data, including temperature, relative humidity, mean wind velocity, and solar radiation, were obtained from the Dongducheon National Meteorological Station, which is the nearest station to the study area.
Water level observations were performed by MOLTM near the channel outlet of the study watershed. The measured water levels were converted to discharge using a water level-discharge relationship regressed from the measured data. The discharge data was divided into calibration and validation sets. A warm-up phase from 2004 to 2006 was used to achieve steady-state conditions in the model. According to [58,59], an ideal calibration period involves wet, average, and dry years.

Case Study
A case study was conducted for the Jinwangyo (JW) watershed in Korea to test the applicability of the Simulink-Tank (Figure 6). The study watershed is located near Seoul, Korea. The watershed area is 201.5 km 2 , of which 68%, 8%, 10%, and 14% is comprised of forest, paddy, upland, and other land uses, respectively.
Hourly precipitation data from 2004 to 2014 were obtained at five stations operated by the Ministry of Land, Infrastructure, and Transport (MOLTM), and the average hourly precipitation was determined using the Thiessen polygon method. Daily weather data, including temperature, relative humidity, mean wind velocity, and solar radiation, were obtained from the Dongducheon National Meteorological Station, which is the nearest station to the study area.
Water level observations were performed by MOLTM near the channel outlet of the study watershed. The measured water levels were converted to discharge using a water level-discharge relationship regressed from the measured data. The discharge data was divided into calibration and validation sets. A warm-up phase from 2004 to 2006 was used to achieve steady-state conditions in the model. According to [58,59], an ideal calibration period involves wet, average, and dry years.    Figure 7 shows the simulated results obtained from the Simulink-Tank model developed herein. In the Simulink modeling environment, dynamic changes in hydrologic components, including evapotranspiration, storage in each tank, and runoff in each tank, can be illustrated with a simple   Figure 7 shows the simulated results obtained from the Simulink-Tank model developed herein. In the Simulink modeling environment, dynamic changes in hydrologic components, including evapotranspiration, storage in each tank, and runoff in each tank, can be illustrated with a simple click. The Simulink-based model allows users to investigate the sensitivity of parameters influencing the hydrologic system. In addition, dynamic changes caused by structural changes in the model can be ascertained through a simple plug-and-play interface.

Dynamic Description of a Hydrologic System
Water 2017, 9,639 10 of 17 click. The Simulink-based model allows users to investigate the sensitivity of parameters influencing the hydrologic system. In addition, dynamic changes caused by structural changes in the model can be ascertained through a simple plug-and-play interface. The advantages of the Simulink approach include increased model development speed, ease of optimization, inherent flexibility, transparency, and the ability to simulate interactions between the model components. It can save development and application time when more complicated structures are considered, since the extensive math and logic functions, visualization, and various toolboxes such as neural networks are already developed in block format and do not require additional programming to link them. Also, by facilitating the reuse of already developed blocks and modules The advantages of the Simulink approach include increased model development speed, ease of optimization, inherent flexibility, transparency, and the ability to simulate interactions between the model components. It can save development and application time when more complicated structures are considered, since the extensive math and logic functions, visualization, and various toolboxes such as neural networks are already developed in block format and do not require additional programming to link them. Also, by facilitating the reuse of already developed blocks and modules with a copy-paste graphical interface, Simulink eliminates the need to write thousands of lines in codes. In addition, the process of conceptualization and mathematical representation of physical interactions among hydrologic components for the study watershed can be demonstrated in the Simulink-Tank. For example, users can ascertain the interaction between the evapotranspiration and the water storage visually with the related block: the more the evapotranspiration, the lesser the water storage, and consequently, the lesser the soil water stress coefficient (K s ). This in turn decreases evapotranspiration, thereby completing the negative loop.
Despite these advantages, MATLAB/Simulink has two principal disadvantages. The first is that it is an interpreted language and therefore executes more slowly than compiled languages such as C or Fortran compilers. This problem can be mitigated by properly structuring the program to maximize the performance of vectorized code [60]. The second disadvantage is cost. However, this relatively high cost is amply offset by the reduced time required for an engineer to create a working program [60].

Parameter Calibration for the Simulink-Tank Model Using Optimization Techniques within MATLAB
Watershed models require calibration and validation to reduce the uncertainty of predictions [61,62]. Model calibration is usually accomplished either manually or using automatic procedures. In automatic calibrations, parameters are adjusted automatically according to a specific search scheme and numerical measures of the goodness-of-fit. Automatic calibration using various optimization techniques is faster than manual calibration and allows the confidence limits of the model simulations to be explicitly stated [63]. However, from a practical standpoint, programming inexperience can contribute to issues during the application of automatic optimization techniques even when the researchers are well versed in theory.
MATLAB has a graphical user interface (GUI)-based optimization toolbox that includes GA, SA, PS, and SCE-UA techniques as well as other optimization techniques, all of which are shared in an online community. Therefore, it is convenient to use the optimization routines within MATLAB for parameter calibration in the Simulink-Tank model; this also eliminates the need to build equivalent code. In this study, the Simulink-tank model parameters were calibrated using the SCE-UA approach in MATLAB.

Objective Function
The original Nash and Sutcliffe Efficiency (NSE) [64] and the root squared transformed NSE(NSE sqrt ) [65] were used as objective functions for calibration, and compared as Case 1 and Case 2, respectively. The NSE emphasizes high flow due to the squared form, and the NSE sqrt provides more balanced information because the errors are more equally distributed between highand low-flow components due to the root square transformed flow [65].
where O and P represent the observed and simulated discharge, respectively; n is the number of time steps at time step i; and the over-bar represents an average of the given variable over the selected period.

Optimization Results
The Simulink-Tank model was calibrated for daily runoff automatically in the MATLAB environment. Both qualitative and quantitative measures were used for evaluating model performance. Graphical analyses, such as scatter and time-series plots, were used to identify general trends, potential sources of error, and differences between the measured and predicted values (Figures 8  and 9). Quantitative criteria used to examine the feasibility of the model include: The coefficient of determination (R 2 ) and the NSE, which are sensitive to peaks in discharge [57,66]; the Nash-Sutcliffe efficiency based on inverse discharge (NSE inv ), which emphasizes low flow errors [67]; and the percent bias (PBI AS) [62], which emphasizes errors in the water balance between observed and simulated runoff.
The graphical results during the calibration and validation periods indicated that the simulated runoff from Case 1 and Case 2 are similarly matched well with the observations (Figures 8 and 9). Table 4 shows the results of a statistical comparison between the observed and simulated daily runoff for both of the cases. According to the NSE-and PBIAS-based assessments [62], the model's performance is "very good" and "good", respectively, for both of the cases. The values of NSE inv during the calibration and validation periods were −0.15 and 0.34, respectively, for Case 1, and 0.07 and 0.57, respectively, for Case 2 ( Table 4). The NSE inv is the most useful criterion for evaluating very low flows [67], but there are no performance evaluation criteria for the index. Considering that NSE values between 0.0 and 1.0 indicate acceptable levels of performance [59], the simulated low flow results for Case 2 should be considered acceptable based on the NSE inv assessment. For the case study watershed, calibrating with NSE sqrt yielded better low-flow simulation, and the results for high flows and water balance were still efficient.

Optimization Results
The Simulink-Tank model was calibrated for daily runoff automatically in the MATLAB environment. Both qualitative and quantitative measures were used for evaluating model performance. Graphical analyses, such as scatter and time-series plots, were used to identify general trends, potential sources of error, and differences between the measured and predicted values (Figures 8 and 9). Quantitative criteria used to examine the feasibility of the model include: The coefficient of determination ( 2 R ) and the NSE , which are sensitive to peaks in discharge [57,66]; the Nash-Sutcliffe efficiency based on inverse discharge ( inv NSE ), which emphasizes low flow errors [67]; and the percent bias ( PBIAS ) [62], which emphasizes errors in the water balance between observed and simulated runoff.
The graphical results during the calibration and validation periods indicated that the simulated runoff from Case 1 and Case 2 are similarly matched well with the observations (Figures 8 and 9). Table 4 shows the results of a statistical comparison between the observed and simulated daily runoff for both of the cases. According to the NSE-and PBIAS-based assessments [62], the model's performance is "very good" and "good", respectively, for both of the cases. The values of inv NSE during the calibration and validation periods were −0.15 and 0.34, respectively, for Case 1, and 0.07 and 0.57, respectively, for Case 2 ( yielded better low-flow simulation, and the results for high flows and water balance were still efficient.

Conclusions
This study introduced a modular Simulink-Tank model and applied the model to a rainfallrunoff analysis to demonstrate the utility and potential of a graphics-based model development environment, Simulink. The application results showed that the Simulink-Tank model could be conveniently developed and calibrated, and the calibration model provided acceptable performance in reproducing daily runoff hydrographs of the study watershed. The drag-drop graphical user interface of Simulink helped quickly understand the structure of a hydrologic model and the linkage between hydrologic components, and it also allowed for detailed descriptions of the sub-processes used, even as the main structure of the model remains unchanged. Moreover, various optimization methods provided by Simulink could be easily applied to parameter calibration without additional programming to link optimization algorithms to a model. The application of Simulink was limited to a Tank model in this study. However, the Simulink model development demonstrated here would be applicable to any rainfall-runoff models that represent hydrological components and processes with conceptual objects in simulation. In addition, users can easily customize a Simulink model by importing modules developed previously, since Simulink provides several functions to facilitate

Conclusions
This study introduced a modular Simulink-Tank model and applied the model to a rainfall-runoff analysis to demonstrate the utility and potential of a graphics-based model development environment, Simulink. The application results showed that the Simulink-Tank model could be conveniently developed and calibrated, and the calibration model provided acceptable performance in reproducing daily runoff hydrographs of the study watershed. The drag-drop graphical user interface of Simulink helped quickly understand the structure of a hydrologic model and the linkage between hydrologic components, and it also allowed for detailed descriptions of the sub-processes used, even as the main structure of the model remains unchanged. Moreover, various optimization methods provided by Simulink could be easily applied to parameter calibration without additional programming to link optimization algorithms to a model. The application of Simulink was limited to a Tank model in this study. However, the Simulink model development demonstrated here would be applicable to any rainfall-runoff models that represent hydrological components and processes with conceptual objects in simulation. In addition, users can easily customize a Simulink model by importing modules developed previously, since Simulink provides several functions to facilitate feedback and data transfer. Therefore, it is anticipated that Simulink will be widely used for hydrologic analysis as a variety of simulation needs are growing rapidly.