Metsimmetallurg Y: The Extractiveprocess Simulator
Metsimmetallurg Y: The Extractiveprocess Simulator
Metsimmetallurg Y: The Extractiveprocess Simulator
THE EXTRACTIVEPROCESS
SIMULATOR
Bucaramanga Santander
1
Material written by Rafael G. Ardila Montero
Student of Metallurgical Engineering and
Colombia.
2
Author's Notes
The main objective of this material is to present some introductory concepts to the
simulation of extractive metallurgy processes in the powerful simulation software
known as METSIM.
This material is aimed at all Metallurgical Engineering students and related careers
who find interest in this area.
I thank God for giving me the opportunity to contribute with this contribution to
Metallurgical engineering, intending with this to awaken the taste of many students
for the simulation of processes, to my parents Rafael and hope because everything
I have achieved in my life has been thanks to them, to Professor Gustavo Neira for
being my teacher in the field of extractive metallurgy, to engineer Julio Sáenz for
giving me the opportunity to learn about great metallurgical processes and to whom
I owe a lot for guiding and motivating me in the study of simulation , to Professor
Julio Pedraza for supporting me in the area and those people who have contributed
in one way or another to the writing of this text.
Rafael
Bucaramanga, July 2009
3
"I can only fight for what I love, Love
As we can see, there are innumerable computer programs that help us in the
modeling and simulation of extractive metallurgy processes, which have as a
common point the ease of carrying out mass and energy balances, but at the same
time they have a notable disadvantage which obviously lies in which to simulate a
complete plant, several programs should be counted for each stage of the process,
which would increase costs and fluctuate in the results. For this reason John
Bartlett creates the METSIM (Metallurgycal Simulator) which combines in a single
program the different modules necessary to model and simulate a complete metal
extraction and production plant, with a very user-friendly and easy-to-implement
version for Windows, becoming a powerful tool with excellent results.
Due to the fact that in many metallurgical engineering pensum the necessary
concepts are not given to achieve an acceptable model and therefore results
product of reliable simulations, this work also aims to present the concepts of
modeling, simulation and control of processes of
5
a simple way for a student to perform a simulation in a short time.
Installation
4.1 General
6. Currents in METSIM
6.1 Description
6.2 Classification
Reactions in METSIM
7
8. APL Language
8.3.3Index
11. Control
8
11.3 Available Controllers in METSIM
Results
9
1. METSIM
METSIM is a simulation software useful for modeling complex metal production
plants via extraction from their ore. An example of this we can simulate mineral
beneficiation plants, metallurgical processes where chemical reactions occur and
due to global regulations on caring for the environment, it gives us the option of
simulating processes of recovery and cleaning of the environment. This software
was developed by Mr. John Bartlett and is licensed through PROWARE. METSIM
works with a sentinel type USB key which must be connected to the PC so that
METSIM can work in its Full version, if the key is not connected the user will only
be able to work with the demo version which has limited capacities.
One of the novelties of this software and its difference from others is the language
in which it was developed, which is known as APL (A Programming Language) , a
very powerful high-level language, which allows us to develop coarse mathematical
operations with small lines of code if we compare it with other languages such as
the C language or Visual Basic.
Module Description
10
Multicomponent Particle size Module to perform particle size
analysis analysis of multicomponent
systems.
One of the things to keep in mind is that to work with METSIM you must have prior
knowledge of the different extractive metallurgy processes.
In this work, only the explanations pertaining to the mass and energy balance
modules are covered, we hope in subsequent publications to include the other
modules.
So as we can see basically this software is very useful in achieving mass and
energy balances of quite complex systems, throughout this work we will see how to
do them.
1.2 Installation
For Windows we simply have to run the program from the executable file on the CD
(.exe) and install it in a folder on disk C, if we do not install it there the program will
not run. Theitself setup programwill give us the
11
paused prompts to enter the license number and other data required for the
installation.
The screen resolution must be a minimum of 1024x768 pixels to be seen on the
screen.
To open METSIM, one that has been installed, we simply have to click on the icon
shown below:
Where the main METSIM screen will appear, which we see below (see figure):
The models that we build in METSIM can be said to be data acquisition models,
where we will have a series of inputs and therefore outputs, these inputs and
outputs are known in the language of process engineering as "currents" and these
will be related by means of a unit of operation or unitary operation that may or may
not be reccionante which simulates the equipment where a certain process is
carried out.
Output 3
Input 1Input 2
Output 1
Unit 1 U2
Output 2
As we can see, the figure above is a Flowsheet, in which we can distinguish the
inputs and the outputs, we must bear in mind that in the case of output 1 for unit 1,
it becomes an input (2) for unit 2, we can also see that from unit 2 it comes out a
stream that is reentered to unit 1, these types of streams are known as recycle
streams.
As previously mentioned operating units may or may not be reactants, this indicates
that may or may not be chemical reactions within
13
of them, is at this point whereenters the ability of the modeler to distinguish when
carrying out a physical stage or chemistry.
When we open the main METSIM Screen we find a series of icons (see figure) which fulfill
the functions listed below:
Main Icons
Unit Operations Modules
New Model: allows us to leave the current model to build a new model, before doing
so the system will ask us if we really want to abandon the current job.
Save Model: Allows you to save the model, the files are saved in .sfw format.
Model Parameters: it is also known as IPAR Menu; from this icon we can enter
the model with specific data such as the units we need to work with, the model's
title, the model's description and the activation of different modules, such as the
activation of the heat balance or gravity separation module, for example, but let's
look at the content of the icon in a little more detail.
:: From this tab we can enter the model with basic data such as the model's
title, owner, and the name of the person who did the work.
: From this tab we can add to the model the climatic and geographical
conditions of the site where a plant is being recreated.
15
: We have the option of changing the units with which we are going
to work, METSIM brings a series of standard units, for example, let's see the units
that METSIM has.
Standard Mass Units Standard Time Units
Error Checking: Icon that allows us to see if we have an error in the model.
Print Flowsheet: Icon that gives us the option to print the flow chart of the
model.
Enlarge Draw Size: It gives us the option to Change the size of the Flowsheet,
in this case we can convert it to a smaller size.
Reducing Drawing Size: unlike the previous one with this icon we can
enlarge the flow chart.
16
Center Flowsheet: We can center the Flowsheet to make it visibly more
pleasant.
Box items to move: We can move the item boxes on the streams.
Zoom in: allows you to increase the size of the Flowsheet to better observe
some details.
Locate Stream: allows us to locate a particular stream, just type the stream
number and press ok, immediately METSIM will highlight the stream in fuchsia
color, if said stream is connected to other sections (look at sections) METSIM us It
will show a list of the sections where the stream is located, where we must select
the section where we need to locate the stream.
Flowsheet.
Reverse unit operation: we can change the sense of a unit operation. That is,
if we have the following unit operation, we can change the orientation and leave it
as shown below:
17
Move Object: allows you to move any object belonging to the Flowsheet.
Move text: allows us to move the labels or static text that appear in the
Flowsheet.
Turn objects (on / off): allows you to turn objects on or off in the Flowsheet
diagram.
Copy object data: allows us to copy the data of an object within the flow chart,
when pressing this icon we will see the instructions on how to do it.
Assing values to streams: allows us to enter the stream editing palette to
enter data.
Edit object data: this command is one of the most important and allows us to
enter any object to change and edit the data. The author of this tutorial has given
the name "gossip" to this button due to the characteristics that make it up.
18
Follow connecting arrowshelps: Very useful command and itus to
interconnect currents between sections.
simulation icons
Calculate one unit operation: allows you to run or run the simulation of a
single unit operation.
Calculate unit operation ranges: Allows you to run the simulation by ranges.
Calculate all sections: Allows running all sections and unit operations.
19
4.4model icons
Elements: allows us to see the numbers of the elements that are part of our
model.
Components: allows us to see the numbers of the components that are part of
our model.
Phases: allows us to see the numbers of the phases that are present in our
model.
Unit operations: allows us to see the number, description and section of the
different unit operations present in our model.
Add text blocks: allows the insertion of text boxes to the Flowsheet.
balance.
Display value functions for St: shows us a list with the APL functions, for the
currents.
20
4.5 APL Icons APL
Value Functions: shows us a list with all the meanings of the APL functions.
21
Mine
Mineral Benefit
Hydrometallurgy
Pyrometallurgy
Gas Treatment
Various combinations
It is worth noting that not all the equipment is described since that depends on the
engineer who is going to develop a specific model, since he must know the plant
equipment very well beforehand.
The first tab to appear is the one that refers to the equipment as such, in this tab
We must add the name of the unit operation and establish numerically (numbers
set by default) the input currents and the output currents.
22
In this tab that appears in all unit operations, we must enter the
corresponding chemical reactions (if any) that are carried out within the operation.
Later it will be shown in detail how to do it.
This tab refers to the equilibrium of Phases, and finds its utility in the effect
of mass transfer between two phases and / or components in addition to chemical
reactions. This calculation is made after the chemical reaction takes place. Said
equilibrium equations can be entered by implementing:
EQT: Temperature in ° C
EQP: Pressure in Kpa
EQV: Variables It
must be borne in mind that this is an option that is under development, therefore it
is not advisable to work with it, or if necessary you can contact PROWARE for
assistance in this regard.
23
In this tab we must specify both the Kilocalories entered into the system
and the Kilocalories lost, the heat transfer can be specific through an APL
expression, as shown in the following figure: It
must be borne in mind that QF is the amount of heat entered or lost, which is
entered as a fraction of the total input heat, QA is the heat entered as a fixed
amount in Kcal / Hour.
QX: It is the space available to enter the expression APL, which defines
the heat transfer.
Something very important to take into consideration is that the entered heat
must be specified as positive and the lost as negative.
This option provides decision structures for some controls in the model,
which is very useful for calculating some control parameters. These controllers are
useful for flow variation and control, data entry, and for Flowsheet configuration.
24
It is useful for entering the number of workers, job description and working
time.
Most of the unit operations modules “mix” the feed streams, then the mechanism is
applied based on this mix or combination of the streams. This mechanism can be
preceded by chemical reactions or a phase change and if the required result is not
achieved then the mechanism or chemical reaction can be changed orcontrol
strategies can be applied Feedback or Feedforward. This is made possible due to
the structure of the program in which chemical characteristics of the different
species that enter the model can be specified and to the complex and
comprehensive control strategies.
The calculation sequence used by METSIM is carried out according to the following
procedure:
25
All input streams and component flow rates are added. All reactions are
calculated.
The output currents are separated according to the parameters of the unit operation.
The data that was entered and calculated in the unit operation is saved.
MIX: This unit mixes all the input streams simulating tanks, mills, etc.
SPC: this unit allows the components to be separated as happens for example in
flotation cells, concentrators etc.
26
5.2.1 Stream Mixer
The “Stream Mixer” module is used to combine or mix several input streams into a
single output stream. The components of all the input streams are stuck together
and all chemical combining is carried out before the output stream is calculated.
This unit is also capable of heat balancing. Something that should be noted is that
data does not need to be entered into the unit operation for it to perform the
operation of combining or mixing the currents, and if it is required to enter chemical
reactions, these must be entered through the Reaction input data Screen.
5.2.2 Splitter Comp
27
ofperforming energy balances. A solid component particle size analysis is assumed
the same for all outlet streams.
The Parameters input data screen (SPC input parameters) are used to enter the
solid concentrates, for example to enter the stream i its fraction in weight or in
grams per liter, as shown in the graph:
This section is used for multiple component and element recovery in specific
output streams.
The “Phase Splitter” module is used to separate one or more input currents into
two or more output currents with different phases.
The requirements for the output currents are specified in Parameters input data
screen where the following will appear:
28
Basically this table refers to the different possible phases in a model, where SI
refers to inorganic solids SO organic solids LI inorganic liquids LO organic liquids
M1 molten metal M2 matte M3 slag GC gases.
Example:
OS2: second output current of the phase Splitter (in this blank box you must
specify the percentage (/ 100) of the phases in that current.
29
This is the way to establish the percentage of separation between the
relative phases.
6 . Currents in METSIM
6.1 Description
As mentioned above, currents are those lines that interconnect the different unit
operations, this seen from the Flowsheet point of view, from the point of view of the
model as such, the currents represent characteristic flows which They contain one
or more phases with their different elements that make up the compounds of our
system.
They are the ones that directly reflect the results calculated by METSIM, in
addition to serving as a source of data entry.
6.2 Classification
The classification of currents is quite simple. There are 3 types of currents which
are defined below:
Input Currents or Inputs: they are those currents that enter a unit operation.
Output currents or Outputs: are those that leave the unit operation.
Recycle Streams or Recycle Streams: are those that leave a unit operation and
enter a previous unit operation.
30
The icon to add streams can be found in the GEN module, and its image is the
following:
Stream Icon
The streams editing palette is that useful screenshot for entering or viewing data In
a few words we can say that it is the "soul" of the currents. Below is the figure with
their respective descriptions:
In this section of the editing palette we must enter the data corresponding to the
description of the stream, the number of the text box (See appendix A) and we can
see that some “botones” referentes a las fases presentes en la corriente,
anteriormente se explica la nomenclatura empleada en METSIM para las fases.
31
Composición de las
fases por
componentes
Composición
de las
fases por elemento
Fase Color
Acuosa Azul
Sólidos Gris
Molten Rojo
Gaseosa Verde
Slag Blanca
32
Cuando hay diferentes fases en una corriente esta adoptara el color de la fase que
se encuentre en mayor proporción.
Las corrientes de reciclo o retornos no son otra cosa que aquellas corrientes que
llevan material de una operación unitaria establecida a una operación unitaria
anterior, como se observa en la siguiente figura:
Corriente de Reciclo
Corrientes de Entrada
Corrientes de Salida
El hecho de que la secuencia mediante las cuales las operaciones unitarias son
calculadas por METSIM, significa que es posible elegir arbitrariamente si una
corriente particular es o no una corriente de reciclo o retorno. Una de las más
notables habilidades que tiene METSIM es la facilidad con la cual se tratan las
corrientes de reciclo, ya que no hay ninguna restricción hacia el usuario de
minimizar el uso de estas corrientes o de ubicarlas en el diagrama de flujo de una
33
forma “inteligente” por decirlo de alguna forma, sin embargo el cálculo de estas
corrientes son la causa más común de los problemas de convergencia.
Como bien se sabe para empezar a hallar las raíces es necesaria la suposición de
un valor inicial y de ahí el método empieza a actuar mediante la implementación de
la tangente en el punto escogido inicialmente, esto representado por la derivada de
la función reemplazada en el punto, como se observa en la siguiente grafica:
Método de Newton Rhapson
34
A la acción de generar valores y calcular la aproximación de la raíz se conoce con
el nombre de “iteraciones” ya la efectividad del método de encontrar una raíz muy
cercana con muy bajos porcentajes de error se le conoce como convergencia.
Luego de haber repasado este método, podemos decir que METSIM realiza sus
cálculos a través de iteraciones por lo tanto también tenemos grados de
convergencia, los cuales se ven seriamente afectados con la implementación de
corrientes de reciclo.
Las corrientes de reciclo pueden dividirse en aquellas que reciclan material, para
que dicho juegue un papel crucial en la operación unitaria en la cual es devuelta, y
aquellas que reciclan material para que este entre al proceso de nuevo. Un
ejemplo de esta ultima seria el reciclaje de material particulado, finos o polvos
desde los precipitadores electrostáticos que limpian la chimenea de algún horno,
dichas corrientes frecuentemente no causan problemas por las siguientes razones:
Los flujos de los componentes de estas corrientes son rápidamente devueltos por
METSIM usando un método iterativo. METSIM utiliza el método de aceleradores de
convergencia de Wegstein el cual permite obtener dichos valores de una forma
más rápida.
35
lineales. La base de este método es la propuesta clásica de de iteración de
aproximaciones sucesivas a un valor mejorado, según la siguiente ecuación:
Donde:
36
Es la definición de q, según:
Ósea:
Y de igual modo:
Resultando:
37
Ahora como X* no se conoce se debe aproximar. Esto es:
Luego:
38
Flowsheets es posible que METSIM, sea incapaz de determinar los flujos en
estado estacionario para las corrientes de reciclo sin ayuda considerable. Una cosa
muy importante de esto es que cuanto más cerca este la operación unitaria de
donde se genera la corriente de reciclo más probable es que METSIM converja a el
resultado con el menor porcentaje de error. Pero si desafortunadamente no
obtenemos el resultado esperado lo mejor es romper el ciclo de recirculación y
calcular la cantidad del componente que debe eventualmente ser recirculado solo
corriendo la simulación de la sección donde se genera la cantidad del componente
a ser recirculado. La sección donde la corriente de reciclo es generada puede de
esta forma ser calculada. Por ello aunque METSIM presente fortalezas ante estos
problemas lo mejor es establecer un diseño en el cual se empleen la menor
cantidad de corrientes de reciclo.
Los siguientes Tips deben seguirse cada vez que se utilicen corrientes de reciclo,
incluso si la convergencia eventualmente es alcanzada, estos consejos pueden
ayudar a acelerar los cálculos de un Flowsheet:
Cuando se emplean varias corrientes de reciclo a la misma operación unitaria estas
deben ser mezcladas en una operación MIX (como por ejemplo en un Stream
Mixer), la cual debe ser puesta después de las operaciones unitarias de donde
emergen las corrientes de reciclo, ya que con esto garantizamos que solo una
corriente de reciclo va a ingresar a la operación unitaria de interés.
Si se tiene un diagrama de flujo con muchas ramas, las ramas mas cortas deben
tratarse primero, antes de que el flujo principal continúe.
39
Nunca ponga controladores Feedback sobre operaciones unitarias que contengan
corrientes de reciclo como corrientes de salida, John Bartlett está trabajando en un
algoritmo para distinguir los casos en los cuales las corrientes de reciclo, puedan
convergir primero, y luego aplicar el controlador.
40
7. Reacciones en METSIM
Esta sección describe las distintas formas en las cuales las reacciones químicas
pueden ser descritas en METSIM. Las reacciones químicas son el corazón del
modelo y la forma en la que ellas son descritas puede radicar el éxito o el fracaso
de la simulación, ya que ellas nos predicen las cantidades de los componentes que
se forman y el consumo de las materias primas alimentadas.
Estas deben ser especificadas en cada una de las operaciones unitarias en las
que ocurran, y si una reacción se repite en distintas operaciones unitarias debe
especificarse en cada una de ellas individualmente.
Cada operación unitaria cuenta con un “Screen” o pantallazo en las cuales se lleva
a cabo la inserción de las reacciones químicas, ejemplo de este pantallazo se da a
continuación:
41
Explicación detallada de esta ventana:
Menú Principal
+ React: Agregar un reactivo
.
- React: Quitar un reactivo.
42
Balance: Balancear la Reacción.
43
Pantalla de edición de Reacciones
En esta zona aparecen tanto los elementos como componentes en sus estados y
fases, y están disponibles para agregarlos a la pantalla.
44
Parámetros calculados por METSIM
El equilibrio de las reacciones puede basarse en las siguientes opciones de
cálculo:
Equilibrium, Enter KE
Equilibrium, Enter TM
Equilibrium, No Entry
45
Unit Op Group
11 Unit Op
Group 12 Unit
Op Group 13
Unit Op Group
14
Unit Op Group
15 Unit Op
Group 16
Unit Op Group
17 Unit Op
Group 18 Unit
Op Group 19
Unit Op Group
20 Unit Op
Group 21 Unit
Op Group 22
Unit Op Group
23 Unit Op
Group 24
46
Reaction Extent, Enter PC.
Por ejemplo, si es necesario incorporar una eficiencia de oxígeno (es decir, una
cierta fracción de oxígeno que no reaccionará) en un horno se puede implementar
la siguiente técnica:
Para ilustrar el ejemplo, desde la base de datos se deben crear dos componentes
que contengan oxigeno. La primera reacción en el horno sería la transferencia de
una porción de oxigeno no reaccionante a un segundo componente inerte.
Posteriormente se ingresaran reacciones de combustión para consumir el oxigeno
reactivo remanente presente en el primer componente.
Al final se usara una reacción para reconvertir todo el oxigeno inerte a oxigeno
reactivo. De esta manera, el componente inerte de oxígeno se utiliza como
producto intermedio, el cual es usado internamente, pero no aparece en el balance
porque este es reconvertido dentro del horno.
Esta técnica usa la característica de METSIM que ejecuta las reacciones químicas
estrictamente en el orden en el que son descritas. Y los componentes generados
después, incluso dentro de la misma operación unitaria, no pueden ser
consumidos en las reacciones anteriores.
47
La primera reacción hace referencia a la conversión de oxigeno reactivo a oxigeno
inerte, para ello vamos a limitar la reacción con un rendimiento del 10% es decir
PC= 0.1
rO2 = i O2
La reacción final también tiene un rendimiento del 100% limitada por el rO2
disponible, por lo tanto PC=1.0.
DO2 = rO2
De aquí se observa que el 10% del oxigeno que entra al horno pasara sin
reaccionar a través del horno.
Para ilustrar otro ejemplo imaginemos un horno eléctrico de refinación, para
simular el efecto del soplo de nitrógeno para agitar (stirr) y favorecer la reacción de
desulfuración a través de un tapón poroso en el fondo de un baño metálico
fundido.
48
Aunque el nitrógeno no tiene efecto químico sobre el sulfuro de cobre (Cu2S) este
tiene su efecto favoreciendo la reacción de desulfuración .Del mismo modo, la
agitación promueve una reacción entre el oxígeno disuelto en el cobre y el azufre.
49
inertes como por ejemplo la alúmina, hasta que se ha reducido a un nivel en el que
ya no es lo suficientemente fuerte como para disolver la alúmina.
Esta opción permite al usuario utilizar cualquier expresión APL válida para
reemplazar una cantidad fija la fracción residual en peso de esta forma será
controlada por la expresión.
Mass Conversion - Enter PC
50
Donde K es la constante de equilibrio y Px es la presión parcial (es decir la fracción
molar) de la especie x en la fase gaseosa.
La forma de establecer la constante de equilibrio es de la siguiente forma: Se debe
establecer el logaritmo de la constante de equilibrio e introducirla en el siguiente
espacio:
Equilibrium Enter TM
51
Donde G es el cambio de energía libre de Gibbs, K es la constante de equilibrio, R
es la constante de los gases y T es la temperatura termodinámica.
Equilibrium, No Entry
52
En las opciones de equilibrio METSIM considera que todos los componentes
sólidos inorgánicos forman una sencilla fase solida, de modo que la concentración
de un componente con esa fase solida no reflejara su actividad termodinámica. Así
el método es efectivamente limitado a mezclas de fluidos; y para sistemas
gaseosos este seria por lo menos más efectivo para calcular el estado de
equilibrio.
Unit Op Groups
8. Lenguaje APL
53
nociones básicas del lenguaje APL para que pueda implementar dichas
herramientas en el modelado de distintos sistemas.
56
Además se pueden observar los botones de ejecución (Clear, Cut, Space…). La
utilidad de este teclado se centra en que en el podemos desarrollar todas las
operaciones matemáticas en lenguaje APL que deseemos, y obtendremos el
resultado inmediatamente en el Screen que aparece de color verde.
8.3 Operaciones APL Básicas
57
Donde APL evalúa la anterior expresión de la siguiente forma:
En este ejemplo se puede observar mejor como APL realiza las operaciones. En
ocasiones se pueden usar paréntesis para alterar el orden de ejecución, por
ejemplo:
B. Las funciones APL también pueden trabajar en largas listas de Números, como
por ejemplo un escalar y un vector:
58
Ahora observemos el siguiente ejemplo:
Donde claramente se observa que esta operación no se puede realizar debido a
que existe un error dimensional, para ello METSIM enviara un mensaje como el
siguiente:
59
8.3.2 Funciones APL
Asignación de Valores
Para asignar un valor a una variable se emplea una flecha apuntando de derecha
a izquierda 🡨 Por ejemplo para asignar un valor escalar de 15 a la variable
“NUMBER” se realiza el siguiente procedimiento:
Similarmente, el resultado de una expresión puede ser asignado a una variable,
para ello se debe realizar el siguiente procedimiento
60
Vale la pena decir que para que aparezca el resultado hay que oprimir el botón
“Execute”. Un vector puede también ser asignado a una variable (los vectores en
APL se ingresan con valores numéricos separados de espacios ej.: 1 2 3 4 vector
de 4 elementos) por ejemplo:
Donde se aprecia que se está asignando el vector 5 6 9 11 a la variable VEC. Ya
con la variable especificada se puede buscar cualquier elemento dentro del vector.
Para ello vamos a realizar el ejemplo en el teclado APL:
61
Por lo tanto se sabe que el vector VEC es de 4 elementos .Ahora queremos utilizar
su segundo elemento “6” para multiplicarlo a la variable escalar del ejemplo
anterior “RESUL” de valor 20, cuyo resultado debe ser 120, desarrollemos este
ejemplo en el teclado APL:
La forma de buscar el elemento del vector es anteponiendo el nombre del mismo y
el numero del elemento en paréntesis cuadrados. También se pueden buscar
varios elementos del vector de la siguiente forma:
Ahora a partir de variables que ya han sido creadas se pueden especificar otras
nuevas, como no lo muestra el siguiente ejemplo: Vamos a crear una variable
vectorial llamada NEW que va a constar de los elementos 3 2 4 del vector VEC ya
esto le vamos a sumar la variable escalar NUMBER (del ejemplo anterior)
62
Que es lo mismo que ingresar:
8.3.3Índice de función
Al aplicar la función iota al número 10 esta nos genera valores enteros positivos
desde el 1 hasta el número que se especificó que en este caso es 10 (por analogía
con otros lenguajes es como actúa un ciclo For), el resultado es el siguiente:
63
La segunda función es diádica está también es llamada “index of” esta función
básicamente encuentra la posición de algunos elementos de un arreglo, la forma
de programar esta función es:
Entonces con esta segunda utilidad de la función IOTA se pueden saber las
ubicaciones de los números que especificamos, en este ejemplo queremos saber
que ubicación tienen los números 7 5 3 del vector 3 4 7 3 8, para lo cual la
respuesta es:
Donde se aprecia que la posición del número 7 es la t ercera dentro del vector, y
como el numero 5 no está dentro del vector nos asigna la sexta posición es decir
nos dice que dicho elemento no está dentro del vector por eso lo saca de
dimensión, y la posición del número 3 es la primera.
Al igual que la función iota la función Reshape tiene dos funciones, la primera de
ellas es una función diádica que permite crear varios tipos de vectores, la segunda
es una función monadica y nos muestra la dimensión o la forma de un vector. Por
ejemplo:
64
Donde el objetivo acá es crear un vector con 7 elementos donde se deben repetir
consecutivamente los elementos del vector dado, en este ejemplo también se
asigna el resultado a la variable vectorial VEC. El resultado es el siguiente:
De la misma forma una matriz también se puede crear con la función Reshape: Por
ejemplo vamos a crear una matriz
El cual me dice que cree una matriz de tres filas con siete columnas, y se aplica
la función iota para generar los valores desde 1 hasta 6. El resultado es:
Y como también está sujeta a la función Reshape genera los valores de la matriz.
Ejercicio:
65
Consecutivos hasta 4. Usar el teclado APL. Asignar el resultado matricial a la
variable BEN.
66
Establecimiento del vector MAX de 5 elementos consecutivos hasta 4:
67
8.3.5 Función de Reducción
Lo mismo puede utilizarse para un vector, utilicemos el vector VEC de los ejemplos
anteriores: La forma de sumar sus elementos es:
68
Las funciones Mi y límite inferior son Tanto monadica como diádicas. A
continuación se explican ejemplos de cada una de ellas:
Aplicando esta función a estos dos valores me encuentra el mínimo de los dos,
que en este caso es:
2. Floor es una función Monadica y nos dará un valor por debajo del valor mínimo,
por ejemplo:
69
Encontrara el valor máximo de estos dos valores que es:
4. Ceiling calcula el valor entero más cercano por encima del número en cuestión
por ejemplo:
70
Donde se observa que
e = 2.718281828
1
e - = 0.3678794412
1
e 0
= 1.
71
9. Valores de Funciones APL en METSIM
Los valores de funciones en METSIM son expresiones APL que definen un valor
particular el cual puede ser aplicado para cualquier componente ( C ) , corriente
(S) , fase ( P ) o elemento (E) , con el fin de referenciar mejor este concepto
debemos tener claro que:
72
Veamos ejemplo de algunas funciones APL, con sus respectivos significados:
Algo que es de vital importancia es que estos valores pueden ser convertidos a
otras unidades ingresándolos directamente a la operación matemática por
ejemplo:
73
está completamente en español y posee una base de datos con los símbolos APL,
más comúnmente empleados.
Icono principal
Cuadro principal
Donde al ingresar nos aparecerá el menú principal:
74
Nos permite buscar la función APL de una forma rápida y sencilla, solo basta
buscar la sección de interés, resaltar la función y hacer click en el botón
descripción donde nos aparecerá , la siguiente figura nos ilustra mejor el
procedimiento:
76
Donde debemos escoger el objeto que necesitemos.
Para ello debemos hacer click en la opción “Scalar”, por defecto en METSIM todos
los escalares están precedidos por las letras US, seguido de ello debemos
especificar el nombre, como no lo muestra la siguiente figura:
77
Luego de ello nos aparecerá el siguiente cuadro:
Donde si observamos la primera línea contiene la descripción del escalar, en la
parte inferior debemos ingresar el valor del mismo. Para este caso establecimos
que el escalar USescalar1 =1.
Se deben seguir los pasos anteriores, solo que escogiendo la opción “Vector”, el
cual esta precedido por las letras “UV”, le damos el nombre de UVvector1, y la
forma de definirlo es la siguiente:
Donde la forma de definir el valor es ingresar las componentes del vector separadas por
un espacio. (No hay limitación en cuanto al tamaño del vector), luego para implementar
una componente del vector se usa la siguiente nomenclatura:
78
UVvector1 [n], así por ejemplo UVvector 1[3] = 3.
10.3 Creación de Matrices
El nombre que precede a la matriz son las letras UM seguido del nombre que
deseemos, miremos la figura:
Donde fue creada la matriz UMmatriz1 [x; y], se debe ingresar las filas separadas
por un espacio, y para ingresar la siguiente se presiona la tecla “Enter”.
UMmatriz1 [2; 2] = 5
79
10.4 Creación de Funciones
Es una de las más importantes aplicaciones que tiene la opción de crear objetos,
ya que podemos implementar cualquier algoritmo desde ahí. Con estas funciones
podemos desde realizar conversiones, hasta importar datos desde Excel y
ubicarlos directamente en el lugar que necesitemos, pero veamos de una forma
general la forma de crear una función en METSIM mediante lógicas en APL:
Asignación de variable 1
función)
80