Professional Documents
Culture Documents
SPEEDUP® 5 Source
Converter
Version 11.1
September 2001
Copyright 2001 by Aspen Technology, Inc. All rights reserved.
AspenTech product names that are mentioned in this manual, e.g., Aspen Custom Modeler™, Aspen Dynamics™,
SPEEDUP® 5, Plantelligence and Enterprise Optimization and the aspen leaf logo are trademarks or registered
trademarks of Aspen Technology, Inc., Cambridge, MA.
All other brand and product names are trademarks or registered trademarks of their respective companies.
This manual is intended as a guide to using AspenTech's software. This documentation contains AspenTech
proprietary and confidential information and may not be disclosed, used, or copied without the prior consent of
AspenTech or as set forth in the applicable license agreement. Users are solely responsible for the proper use of the
software and the application of the results obtained.
Although AspenTech has tested the software and reviewed the documentation, the sole warranty for the software may
be found in the applicable license agreement between AspenTech and the user. ASPENTECH MAKES NO
WARRANTY OR REPRESENTATION, EITHER EXPRESSED OR IMPLIED, WITH RESPECT TO THIS
DOCUMENTATION, ITS QUALITY, PERFORMANCE, MERCHANTABILITY, OR FITNESS FOR A
PARTICULAR PURPOSE.
Corporate
Aspen Technology, Inc.
Ten Canal Park
Cambridge, MA 02141-2201
USA
Phone: (1) (617) 949-1000
Toll Free: (1) (888) 996-7001
Fax: (1) (617) 949-1030
URL: http://www.aspentech.com/
Division
Design, Simulation and Optimization
AspenTech Ltd.
Sheraton House
Castle Park
Cambridge CB3 0AX
United Kingdom
Phone: +44 (0) 1223 819700
Fax: +44 (0) 1223 366980
URL: http://www.aspentech.com/
Contents
Introduction v
What You Need To Use This Manual ................................................................................. v
Associated Manuals............................................................................................................ vi
For More Information........................................................................................................ vii
Online Help ........................................................................................................... vii
Printing Portable Document Format Files (PDFs) ...............................................viii
World Wide Web .................................................................................................viii
Technical Support ................................................................................................viii
Phone Numbers
– or –
In both cases you must merge and reconcile the variable and stream
types from the library DECLARE section with the DECLARE
section of the current problem. This step involves removing
duplicate type definitions by giving precedence typically to the
types listed in the input file.
Where the same stream is defined in both the Library and the
simulation, and differ only in the properties options, you should
merge the variable types from the library with the properties
options in the simulation into a single stream definition in the
simulation.
Note To open another file for converting, you need to click the
Select button again.
Use Existing The Converter will use the Preferences file that exists. By default a Yes
Preferences File template preferences file is supplied. Use this template to define:
• The shared libraries for your procedures and functions
• The working directory for your physical properties system
• The run identification for Properties interface
Click here to see the supplied Preferences file.
Exclude Comments Comments present in the SPEEDUP 5 input file will not be No
Transfer transferred to the Aspen Custom Modeler input file
Allow Extended Warning messages will not be issued if the SPEEDUP file input Yes
Character Set contains characters such as ß and é
Relaxed Port Type The Converter infers variable type inheritance based on the names of No
Matching the variables types. Thus the variable type ENTH_MOL_VAP is
assumed to be derived from the variable type ENTH_MOL, because
the name of the first starts with the name of the second.
The Converter will also match a port containing an
ENTH_MOL_VAP to a stream definition that use an ENTH_MOL, if
there is no stream definition that contains an ENTH_MOL_VAP.
Finally procedure defintions that contain ENTH_MOL_VAP will be
modified to use ENTH_MOL.
Ignore Results If the SPEEDUP 5 input file contains result sections, these sections Yes
Sections will not be converted
Preserve HELP text The text between HELP and $ENDHELP in Model, Procedure, and No
as comments Function sections of the SPEEDUP 5 source will be copied to the
output as comments.
If you select this, you will often need to amend the text so that it
corresponds to the new variable names.
Suppress stream The Converter will not generate STREAM type definitions, nor any No
instances and types instances of these types. All connections will be made using the built-
in default stream types. This results in fewer variables in the Aspen
Custom Modeler simulation, but there will be a reduced
correspondence to the SPEEDUP 5 simulation. This is useful for very
large simulations. Default is to create specific stream types and
instances to match the SPEEDUP 5 simulation as closely as possible.
Source File The SPEEDUP 5 input file with the extension .spe or .speedup
to be converted.
Destination File The Aspen Custom Modeler text file generated with the
extension .acmf.
Preferences File The preferences file with the extension .prf containing a list of
aliases used for SPEEDUP 5 names.
Listing File The list file with the extension .lis is a listing of the SPEEDUP
5 input with interspersed errors and /or warning messages.
Using Keywords
Unlike SPEEDUP 5, the Converter does not allow you to use
keywords as names.
For example, in SPEEDUP 5 you could declare a variable called
OUTPUT in your model and SPEEDUP would allow it, provided
you did not use it in a stream. The Converter does not allow this
and reports a syntax error at such names. You need to replace these
keywords in SPEEDUP 5 input.
Note The Converter converts SPEEDUP 5 input files with
keywords such as "PRINT, "TEAR", "FEED", "THERMO" and
"MEASURE" when they are used as model names.
For example, if OUTPUT is used as a variable name, you will get
the following error during conversion:
MODEL MEREACTOR
16: OUTPUT as FLOWRATE
**** ^
**** syntax error at or near "OUTPUT"
Conversion failed: 1 errors
Converting OPTIONS
1: OPTIONS
2: execution
3: time_step = 0.1
4: intervals = 50
5:
Conversion was successful.
Converting DECLARE
6: DECLARE
7: TYPE
8: area #m2# = 5 : 0 : 100
9: pressure#bar# = 1.01325: 0: 25
Port Types
The converter tries to create the minimum number of port types
and component lists in the Properties definition. If two stream
types in SPEEDUP 5 differ only in their list of components or
options, then the result is one port type and two component lists. If
two stream types have the same list of components and options, but
different variable types, then the result is two port types and one
component list.
Properties Definition
For each different list of components and options in the SPEEDUP
5 stream types, a ComponentList property is created in a single
Properties definition in the Aspen Custom Modeler input file. Lists
are the same if and only if, the components are the same and in the
same order, and the options and their values are the same, and in
the same order. The name of this ComponentList is the same as the
SPEEDUP 5 stream name, e.g., MAINSTREAM. The
WorkingDirectory and RunId data are taken from the preferences
file, with defaults "\My Simulations\properties\" for the working
directory, and "GPP" for the RunId of a Properties Plus input file.
STREAM LIQUID
SET
NOCOMP = 3
TYPE
FLOW_MOL_LIQ, MOLEFRACTION(NOCOMP), TEMPERATURE, PRESSURE,
ENTH_MOL_LIQ
COMPONENTS
BENZENE,TOLUENE,OXYLENE
STREAM VAPOUR
SET
NOCOMP = 3
TYPE
FLOW_MOL_VAP, MOLEFRACTION(NOCOMP), TEMPERATURE, PRESSURE,
ENTH_MOL_VAP
COMPONENTS
BENZENE,TOLUENE,OXYLENE
****
The above example converts to a properties definition with a single
ComponentList property called Mainstream since the component
names were the same for all 3 stream types in the SPEEDUP 5
input file, 3 port types and 3 stream types. These port and stream
types are named after original the stream types in the SPEEDUP 5
input file ie MAINSTREAM, LIQUID and VAPOUR. The stream
types are created in this example, because they are subsequently
used to connect ports in the flowsheet definition.
:
(5.0, 0.001)> : 2
Warning 153: Dynamic measurement weight (2) on DYNEXP ignored.
Example of the This estimation section in SPEEDUP 5:
Conversion of an
Estimation Section
with Dynamic Data
ESTIMATION
Estimate
REACTOR.K1
REACTOR.K2
REACTOR.K3
DYNEXP
Measure
REACTOR.Ya,REACTOR.Yq = <(0.025,0.741,0.199) :2,
(0.050,0.588,0.281),
(0.075,0.488,0.307),
(0.100,0.417,0.307),
(0.125,0.364,0.292),
(0.150,0.323,0.271),
(0.175,0.290,0.247),
(0.200,0.263,0.223),
(0.225,0.241,0.200),
(0.250,0.222,0.178),
(0.300,0.192,0.140),
(0.350,0.169,0.110),
(0.400,0.151,0.086),
(0.450,0.137,0.068),
(0.500,0.125,0.054),
(0.550,0.115,0.043),
(0.650,0.099,0.029),
(0.750,0.087,0.020),
(0.850,0.078,0.014),
(0.950,0.070,0.011)>
****
Flowsheet
The SPEEDUP 5 connectivity statements of a Flowsheet section
convert to Aspen Custom Modeler CONNECT statements.
If the connectivity statement contains a STREAM keyword, an
instance of a stream is declared in the Aspen Custom Modeler
input file.
Example of the This SPEEDUP 5 flowsheet section:
Conversion of a
Flowsheet Section
FLOWSHEET
# Material streams #
Stream "RAW ACID FEED" FEED 1 is Input 1 of CST
Stream "ALKALI FEED" FEED 2 is Input of VALVE
Stream HYDROXIDE Output 1 of VALVE is Input 2 of CST
Stream "TANK OUTLET" Output of CST is Input of PH_SENSOR
Stream EFFLUENT PRODUCT 1 is Output of PH_SENSOR
# Information streams #
Stream PH_SIGNAL Connection 1010 of PH_SENSOR is
Connection 1011 of CONTROLLER
Stream CONTROL_OUTPUT Connection 1012 of CONTROLLER is
Connection 1011 of VALVE
Converts to:
FlowSheet
// Material Streams
Connect CST.I1 With RAW_ACID_FEED;
Connect VALVE_.O1 And CST.I2 With HYDROXIDE;
Connect CST.O1 And PH_SENSOR_.I1 With TANK_OUTLET;
Connect PH_SENSOR_.O1 With EFFLUENT; // Information streams
Connect PH_SENSOR_.SIGNAL And CONTROLLER_.SIGNAL;
Connect CONTROLLER_.CONTROL_ACTION And VALVE_.CONTROL_ACTION;
Homotopy
CC_RESI.SP : 140;
End;
Procedure Sections
The SPEEDUP 5 Procedure section converts to Aspen Custom
Modeler procedure definitions. In all cases:
• Procedures are renamed to include a "p" in front of the original
name.
• The Compatibility property is set to "SPEEDUP".
• The Language property is set to Fortran, because SPEEDUP 5
did not implicitly support Procedures or Functions in any other
language.
• The Call property is set to the name of the external routine.
• The Implementation property is assigned SUBROUTINE.
• The lists of variable types for the input and output arguments
for Procedures are transferred; explicit array bounds are
replaced by asterisks.
If you supply the name of a dynamic linked library (.dll) to the
Code property in the preferences file, this library name is assigned
to the Library property of every procedure definition in the Aspen
Custom Modeler language file. Otherwise, you need to add the
Library property, along with the path and library name, to the
procedure definitions yourself. For help on how to generate a .dll
file for a procedure definition, click here.
Title
The Title section is converted to a Description property in the
flowsheet definition. For example:
TITLE
Closed-Loop 3 CSTRs in series
****
Converts to:
Description: "Closed-Loop 3 CSTRs in series";
Options
The Options section has three subsections:
The Routines subsection is converted into several solver
assignments. The keyword SUPERDAE has been replaced by
GEAR. Routines such as DAE, SRQP, FRONTAL and
SPAR2PAS are not supported by Aspen Custom Modeler and are
automatically discarded by the converter.
The Translate subsection is ignored during conversion because the
rules for variable type checking in streams is no longer applicable
PrintLevel Print
PropLevel PropInfo
Abs_Tol AbsTol
Rel_Tol RelTol
ResTol EqnTol
SS_Tol
Opt_Tol Feasopt.OptTol
Time_Step TimeSettings.CommunicationInterval
Tear Tearing
Hiinterrors Gear.HighestErrors, VSIE.HighestErrors
Reinit Gear.Reinit
Boundcheck Gear.BoundCheck
Event_Tol Gear.EventTol
MaxIntStep Gear.MaximumStep, VSIE.MaximumStep,
RK4.MaximumStep
MinIntStep Gear.MinimumStep, VSIE.MinimumStep
IniIntStep Gear.InitialStep, RK4.InitialStep, VSIE.InitialStep
IntStep ImpEuler.Step
Iterations Nonlinear.MaxIter
RangeFrac Nonlinear.RangeFrac
BoundFrac Nonlinear.BoundFrac
DogLeg Nonlinear.Dogleg
ConvTest Nonlinear.ConvCrit
FDPerturb Nonlinear.AbsPert
SingulFactor Nonlinear.SingPert
MaxStepRed Nonlinear.MaxStepRed
HiVarSteps Nonlinear.HiVarSteps
HiResiduals Nonlinear.HiResidual
MaxVarStep Nonlinear.MaxVarStep
NonRedlter NonLinear.MaxDivSteps
NL2RFCTol Nl2sol.RelFuncTol
NL2AFCTol Nl2sol.AbsFuncTol
NL2XCTol Nl2sol.SolTol
NL2Print Nl2sol.Print
Derivcheck Check ProcDerivs
Converts to:
Model MEREACTOR
NOCOMP as IntegerParameter;
IndexSet1 as IntegerSet([1:NOCOMP]);
X(IndexSet1) as MOLEFRACTION;
# Connection:
*Q AS enthflow # heat input/output
Converts to:
# Connection:
Q as input,output enthflow // heat input/output
SET
nocomp # number of components
TYPE
# Output:
*F_out AS flow_mol
*z_out AS ARRAY(nocomp) OF molefraction
*T_out AS temperature
*P_out AS pressure
h_out AS enth_mol
# Internal:
hl AS enth_mol_liq # liquid spec. enthalpy
hv AS enth_mol_vap # vapour spec. enthalpy
vf AS vapfraction # vapour fraction
x AS ARRAY(nocomp) OF molefraction # liq. composition
y AS ARRAY(nocomp) OF molefraction # vap. Composition
T AS temperature # manipulated temperature
STREAM
# Energy balance
h_out = vf*hv + ( 1 - vf )*hl ;
T_out = T;
Macro
A Macro section is converted into a Model in the Aspen Custom
Modeler input file. The model list is converted to a series of block
declarations. The flowsheet connectivity statements are converted
to a series of CONNECT or LINK statements. Ports are declared as
they are encountered.
You must include alphanumeric tags for the connectivity
statements in the Flowsheet subsection. If they are absent, you will
get a syntax error during conversion as follows:
92: FLOWSHEET
93: #External connections
94: feed is input of basicbed 1
95: product is output of basicbed ?(no_beds)
**** ^
**** syntax error at or near "1"
Conversion was unsuccessful; 1 errors; 1
warnings.
You need to correct the above as follows:
FLOWSHEET
#External connections
feed 1 is input 1 of basicbed 1
product 1 is output 1 of basicbed ?(no_beds)
Note Link statements will be retained as comments if during the
conversion process, if models required for the LINK statements are
not present in the SPEEDUP 5 input file:
Severe Warning 11: Converter was unable to connect
P214STH.CTHROT_I and D210.CTHROT2_O (models were missing from
SPEEDUP 5 input file)
MACRO BIG
?set no_models=5 ?end
model mac
flowsheet
#external streams
feed 1 is input 1 of mac ?(no_models - (no_models-1))
output 1 of mac ?(no_models) is product 1
#internal streams
?repeat
output1 of mac ?(I) is input 1 of mac ?(I+1)
?with I=<1:no_models-1>
****
Converts to:
Model BIG
MAC__Lower as IntegerParameter(1); // Created by converter
MAC__Upper as IntegerParameter; // Created by converter
IndexSet1 as IntegerSet([MAC__Lower: Mac__Upper]);
MAC_(IndexSet1) as MAC;
NO_MODELS as IntegerParameter(5);
I1 as input MAINSTREAM_Port;
O1 as output MAINSTREAM_Port;
IndexSet2 as IntegerSet([1:NO_MODELS-1]);
// External streams
Link I1 And MAC_(1).I1;
Link O1 And MAC_(NO_MODELS).O1; // Internal streams
For I in IndexSet2 Do
Connect MAC_(I).O1 And MAC_(I+1).I1;
EndFor;
End;
Defining the Sizing During the conversion of Macros, the converter will generate two
Parameters parameters for sizing the array of models:
• Lower bound parameter with the suffix "_Lower", with a
default value of 1
• Upper bound parameter with the suffix "_Upper", with no
default value
When the resulting model is subsequently instanced, you will get
the following severe warning, for example:
Unit
All Unit sections are converted to block declarations in the
flowsheet definition.
Any Set subsections are converted as a set of parameters to the
block declaration.
Example of This SPEEDUP 5 section:
Converting Units
UNIT COL1CC1 is a P_I_CONTROLLER
****
UNIT COL1CN1 is a LCONC
Set KEY = 3
****
Converts to:
COL1CC1 as P_I_CONTROLLER;
COL1CN1 as LCONC(KEY:3);
Global
If a Global section is present, it becomes part of the Flowsheet
definition (by default). The Global local variables are given the
type RealVariable.
The MAXIMIZE, MINIMIZE statement is converted to an
objective function expression.
The inequality CONSTRAINT statements are converted to
equations involving slack variables.
The equality CONSTRAINT statements are converted directly to
equations.
PURGE.TOTAL2;
Slack0001+PURGE.X1(3) = MAX_EFFLUENT_CONCENTRATION;
(-Slack0002)+REACTOR.TEMP = MIN_TEMPERATURE;
Slack0003+REACTOR.TEMP = MAX_TEMPERATURE;
(-Slack0004)+REACTOR.PRESSURE = MIN_PRESSURE;
Slack0005+REACTOR.PRESSURE = MAX_PRESSURE;
end; // Constraints
Result/Rcode
Each Result/Rcode section is converted to a single Snapshot
definition with the same name as the Result/Rcode section. The
variables will be renamed to match those valid for the Aspen
Comments
Comments are preserved by default. These are usually moved to
the end of statements within the Aspen Custom Modeler input file.
Multi-line comments are retained as blocks comments. The
converter will also insert comments of its own. For example, when
it generates the __Lower and __Upper parameters used to define
IntegerSets for indexing arrays of models. Sometimes, comments
may be moved or lost seemingly unpredictably.
You may suppress the transfer of comments by checking the
Exclude Comments Transfer on the Converter Dialog box.
• Edit the .acmf file, remove the array definition and ensure
that all references to the ports and port variables are
corrected from an array definition to a scalar definition.
For example:
I1 as input LIQSTREAM_Port;
O1 as output LIQSTREAM_Port;
:
ONS as output LIQSTREAM_Port;
Flowsheet
TheBlock as BlockWithArrays;
end;
You cannot have more than 1 instance with the same name (hence
Tank(1) and Tank(IndexSet1) cannot co-exist). You cannot have
arrays of blocks in the flowsheet., so you must rename TANK(1) as
TANK1, and TANK(8) as TANK8.
Text Processor The converter attempts to rewrite equations with embedded text-
Conditions Inside processor conditions so that the conditions are moved outside the
Equations equations. The result is a series of equations in a number of IF
statements. Since the converter has no knowledge of the meaning
of the conditions, there are sometimes branches in the IF that are
unreachable, and sometimes there are conditions that are overly
complex.
For example:
Original:
X = 10
?if p1 < 1 ?then
+ y
?else
?if p1 > 2 ?then
- Z
?else
+ Z
?endif
?endif
*
?if ?(UOM=1) ?then
?(100*UOM)
?else
?(12*UOM)
?endif;
Converts to:
If ((P1>1) And (UOM==1)) Then
X = 10+Y*(100*UOM);
Else
If ((P1>1) And ( Not(UOM==1))) Then
X = 10+Y*(12*UOM);
Else
SPEEDUP 5 Source Converter Importing Files into Aspen Custom Modeler • 4-1
Example of Using Inheritance to Prevent Variable Type
Mismatch in Procedure Calls
Change:
VARIABLE enth_mol
value:0.050 { GJ/kmol};
lower:-1000 { GJ/kmol};
upper:1000 { GJ/kmol};
END
VARIABLE enth_mol_liq
value:0.025 {GJ/kmol};
lower:-100 {GJ/kmol};
upper:100 {GJ/kmol};
END
VARIABLE enth_mol_vap
value:0.060 {GJ/kmol};
lower:-1000 {GJ/kmol};
upper:1000 {GJ/kmol};
END
To:
VARIABLE enth_mol
value:0.050 { GJ/kmol};
lower:-1000 { GJ/kmol};
upper:1000 { GJ/kmol};
END
VARIABLE enth_mol_liq uses enth_mol
value:0.025 {GJ/kmol};
lower:-100 {GJ/kmol};
upper:100 {GJ/kmol};
END
VARIABLE enth_mol_vap uses enth_mol
value:0.060 {GJ/kmol};
lower:-1000 {GJ/kmol};
upper:1000 {GJ/kmol};
END
4-2 • Importing Files into Aspen Custom Modeler SPEEDUP 5 Source Converter
Handling SPEEDUP 5 Fortran for
Procedures and Functions
This section describes how to handle SPEEDUP 5 user-written
Fortran for procedures and functions.
This table shows the four ways in which you can link user-written
Fortran into SPEEDUP 5 executables and what happens:
After running the converter, you must check that the argument list
in your Fortran is correct. To do this:
1. Open the .acmf file containing your procedure definitions in
Aspen Custom Modeler
2. From the Tools menu, click Generate Procedure Code.
3. Use this dialog box to create the wrappers for your
procedures. You can then compare the arguments in the
generated wrapper with those in your Fortran.
SPEEDUP 5 Source Converter Importing Files into Aspen Custom Modeler • 4-3
4-4 • Importing Files into Aspen Custom Modeler SPEEDUP 5 Source Converter
5 Restriction Messages
Severe Warning 11
Severe Warning 11: Converter was unable to
connect UNIT. TAG and UNIT. TAG (models were
missing from SPEEDUP 5 input file)
Your input uses CONNECTIONS to link together two units,
neither of which have models in the input file. Since the models are
absent, the Converter cannot supply the correct variable name(s)
for the connection(s).
Either include the model(s) in the input or edit the .acmf file before
loading. The Converter inserts this message as a comment in the
.acmf file to assist you in editing correctly.
Severe Warning 12
Severe Warning 12: Couldn't find a CONNECTTYPE
called TAGNAME in TYPENAME
CONNECTTYPE is one of INPUT, OUTPUT, CONNECTION,
PRODUCT, FEED or LINK. TYPENAME will be a MODEL or
MACRO name, TAGNAME identifies the connection that is
needed. The model or macro does not define a connection with the
necessary tag; edit your input so that it does. This warning implies
that your SPEEDUP 5 input file would not have translated
correctly; it may be that it includes models or macros that are not
needed.
Severe Warning 17
Severe Warning 17: Definition of PROCEDURE
PROCNAME not found
Severe Warning 17: Definition of FUNCTION
FUNCNAME not found
Your input references a Procedure or Function for which there is
no definition in the input.
It may not be necessary to supply one if there is a suitable
definition in an Aspen Custom Modeler Library.
These messages are issued only once for each missing procedure or
function.
Severe Warning 18
Severe Warning 18: Emulated array NAME had
elements of different types
Your input has units with names of the form NAME1, NAME2,
NAME3 and uses a Text Processor ?REPEAT loop to connect
them together in FLOWSHEET or supply specifications in
OPERATION.
The Converter has had to create an array to handle the ?REPEAT,
but the units are based on different models. The easiest way to fix
this is to expand the ?REPEAT loop(s) by hand in the SPEEDUP
input file.
If the "array" is homogeneous except for the first and/or last
element(s), you may only have to deal with those units, leaving the
Severe Warning 19
Severe Warning 19: Dummy equation(s) generated
inside IF statement(s) to enable conversion of
FUNCTION to PROCEDURE You must check IFs are
still balanced before loading the .acmf file.
The Converter replaces FUNCTION calls with PROCEDURES,
inserting dummy variables and equations to handle the result of the
call. When the FUNCTION call is inside an IF statement, this may
result in different numbers of equations on either branch of the
"IF".
For example:
IF (FLOW>0.) THEN
FF = FUNCTION FRICTION(FLOW)
ELSE
FF = 0.0
ENDIF
Converts to:
IF (FLOW>0.) THEN
CALL (DummyResult1) FRICTION(FLOW);
FF = DummyResult1;
ELSE
FF = 0.0;
ENDIF;
which has two equations in one branch and one in the other: so it
will be unbalanced. In this case, you will need to edit the .acmf file
to this:
IF (FLOW>0.) THEN
CALL (DummyResult1) FRICTION(FLOW);
ELSE
DummyResult1 = 0.0;
ENDIF;
FF = DummyResult1;
Severe Warning 20
Severe Warning 20: ?REPEAT in CONSTRAINT will
require adjustments to the SLACK variables
The Converter has found a ?REPEAT in the CONSTRAINT
subsection of GLOBAL. This probably implies that one or more of
the slack variables will need to be arrays but the Converter is
unable to deduce which. It is usually straightforward to make the
necessary changes in the .acmf file after inspecting the original
input.
Severe Warning 22
Severe Warning 22: Unable to find NAME in model
MODELNAME, assuming it's MAINSTREAM
The Converter could not find the named port in the named model
(or MACRO). The Converter will assume that the port is a
MAINSTREAM_Port. The most likely cause of this is a faulty
input file.
Severe Warning 23
Severe Warning 23 Component list LISTNAME had no
options - you will need to check that the ACM
defaults are appropriate
A STREAM declaration in your DECLARE section has a
component list but no OPTIONS. You will need to ensure that the
default physical properties options used by Aspen Custom
Modeler™ are appropriate for your simulation, they may be
different from the defaults used by SPEEDUP. Users of the
Properties Plus interface should check the option HENRY-
Severe Warning 24
Severe Warning 24 Could not convert
PARAMETER1:PARAMETER2 to a list of components as
PARAMETER has no value
Could not convert PARAMETER1:PARAMETER2 to a list of
components as the value of PARAMETER1 is greater than the
value of PARAMETER2
The integer slice expression could not be converted to a list of
components for some reason. Usually this is because one or both of
the parameters specifying the slice has not been given a default
value in the model (this gives the first form of the message,
specifying which parameter needs a value). The simplest solution
is to supply a suitable default value in the SPEEDUP 55 model.
The second form of the message is given when default values are
supplied for both parameters, but they are such that the slice is
inverted.
Warning 101
Warning 101: Unterminated string : "STRING"
There is no closing quote for the string in the input. The Converter
will supply one. You should check that the string is the correct one.
Warning 102
Warning 102: 'IDENTIFIER' is too long, truncating
to 27 characters
The name is too long for Aspen Custom Modeler and has been
truncated. This is only important if two different identifiers are
truncated to the same name.
Warning 103
Warning 103: Parsing section of input rewritten
by pre-parse
The Converter is processing a section of input which has been
rewritten by the pre-parse, usually because the pre-parse has found
text processor conditionals embedded in the middle of an equation.
The conditionals are collected together and placed around a series
of equations.
You should review the .acmf file to verify that the conditionals are
correct. You can often remove some of the conditions from the
final output because they are redundant.
For example:
x = ?if p<1 ?then +y ?endif ?if p<2 ?then +z
?endif + y * z;
will convert to:
Warning 104
Warning 104: Unrecognized token "TOKEN" ignored
The specified lexical token has been ignored. For example, an
exclamation mark, which is the only character that is permitted in a
SPEEDUP 5 identifier that is not permitted in Aspen Custom
Modeler.
If this message is followed by a syntax error, it is usually because
the unrecognized token has appeared in the middle of a longer one.
In this case, you should remove the token from your input.
Warning 105
Warning 105: Ignoring HELP subsection(s)
The HELP .. $ENDHELP subsections of your PROCEDUREs,
FUNCTIONs, and MODELs are being omitted from the .acmf file.
This is usually because they require substantial revision before they
are relevant to the converted output.
Warning 106
Warning 106: Earlier revision of preferences file
has been ignored
The preferences file found by the Converter has a version number
which indicates that it is no longer valid, or it may not be a
Converter preferences file.
The existing file will be ignored and will be replaced by a new one.
Warning 111
Warning 111: ROUTINES in UNIT ignored (not
available in Aspen Custom Modeler 10.0)
The input supplies information for mixed-mode integration which
is not supported by Aspen Custom Modeler. The information is
ignored.
Warning 113
Warning 113: Discarded condition (CONDITION) in
GLOBAL VARIABLES
Your GLOBAL VARIABLES subsection contains text processor
?IF statements which have been discarded: it is not an error in
Aspen Custom Modeler to declare variables and then not use them.
You should check that the .acmf file does not contain repeat
declarations, which may happen if the input declares the same
variable differently on each branch of a Text processor ?IF.
Warning 114
Warning 114: The name NAME would be illegal in
Aspen Custom Modeler 10.0; modified preferred
name to CHANGEDNAME
The specified name contains characters that are not allowed in an
identifier in Aspen Custom Modeler 10 (usually hyphens). The
Converter will replace these characters with underscores.
Warning 115
Warning 115: Instance/Type name collision NAME;
renamed instance as NAME_
The input has a declaration where the instance and the type use the
same identifier. This can cause problems in Aspen Custom
Warning 118
Warning 118: Retrieved value of PARAMETER from
TYPENAME definition
The value of the named parameter has been found by reference to
SPEEDUP 5 STREAM definition.
The TYPENAME in this message will be that of a SPEEDUP 5 port
type; the parameter is nearly always NOCOMP or an equivalent
parameter.
Warning 119
Warning 119:Type NOTYPE could not be found,
RealVariable substituted
Your input file does not define NOTYPE as a variable type, so the
Converter will substitute RealVariable wherever it occurs.
Warning 120
Warning 120: Generated port name PORTNAME
collides with existing instance
The Converter generates names for ports by prefixing the
SPEEDUP 5 tag with I, O or C.
The name thus generated already exists in the SPEEDUP 5 input
and the Converter appends an underscore to the generated name.
Warning 121
Warning 121: No stream definition for port
PORTNAME in model MODELNAME
You will need to check the definition for Undefined #_Port.
The # in this message is an integer; undefined port types are
numbered from 1 upwards.
The Converter matches ports to their port type by comparing the
variable types and dimensions of the variables in the port (that is,
the SPEEDUP 5 Model Stream definitions).
Unless you have requested Relaxed Port Type Matching, this
matching must be exact. The Converter will create port type
definitions for any unmatched ports which may then be used for
subsequent ports.
You should check the generated port types carefully.
STREAM LIQUID
TYPE ENTH_MOL_LIQ
STREAM VAPOR
TYPE ENTH_MOL_VAP
****
MODEL INCORRECT
TYPE
H_IN as ENTH_MOL
H_OUT as ENTH_MOL_VAP
:
STREAM
INPUT 1 H_IN # Liquid in
OUTPUT 1 H_OUT # Vapor out
:
****
The above will generate an undefined port type for I1, as there is
no stream type defined that contains the ENTH_MOL type. You
could introduce a MIXED stream-type in Declare, but you may
then find that ports that are expected to be of a specific phase end
up as MIXED. If you change the type of H_IN to
ENTH_MOL_LIQ, then I1 will be defined as a LIQUID_Port (as
the comment in the model indicates it should).
However, changing the type of H_IN in the SPEEDUP file may
mean that the file can no longer be loaded successfully, if H_IN is
also passed to a procedure. Because of this, the Converter also
modifies procedure definitions when the Relaxed Type Matching
option is selected, by using the most general type available. Thus it
will change a procedure specifying ENTH_MOL_VAP to one
specifying ENTH_MOL. Aspen Custom Modeler™ allows an
ENTH_MOL_VAP variable to be passed to a procedure expecting
ENTH_MOL, but not a variable of type ENTH_MOL to a
procedure expecting ENTH_MOL_VAP. The procedure can quite
easily verify that its arguments are in the appropriate range for the
expected phase.
Warning 123
Warning 123: There were COUNT relaxed matches for
this port
This is attached to the previous message if there was more than 1
near match for the port.
Warning 124
Warning 124: Connecting array variables with
equations
One or more of your CONNECTION streams contains array(s).
Because Aspen Custom Modeler cannot handle CONNECT
statements in a FOR loop, the Converter has substituted equations
for them.
Warning 125
Warning 125: Name collision for stream
STREAMNAME; renamed as STREAMNAME_
Your input uses the same name for a stream in a FLOWSHEET
connectivity statement as some other instance. The Converter has
renamed the stream by appending an underscore.
Warning 126
Warning 126: Could not determine stream type for
STREAMNAME in NAME, using Connection
The type needed for the named stream is not defined in your input
(it is probably in the LIBRARY). The Converter has substituted the
generic stream type Connection.
Warning 127
Warning 127: Array(s) with size 1 ignored
Your input declares an array with a constant size of 1. The
Converter treats it as a scalar and omits the subscripts.
Warning 129
Warning 129: Inheriting TYPENAME1 from TYPENAME2
You have specified relaxed port type matching so that the
Converter infers inheritance of variable types by matching names
and inserting a USES clause in the definition of the type doing the
inheriting. For example, ENTH_MOL_VAP will inherit
ENTH_MOL.
Warning 130
Warning 130: Encapsulating FLOWSHEET as a Model
as it contains arrays
The Converter has created arrays of units or arrays of streams in
your FLOWSHEET, which cannot be represented graphically by
Aspen Custom Modeler. The Converter outputs the FLOWSHEET
as a model and instances it in a smaller FLOWSHEET.
Warning 131
Warning 131: Modified Input NUMBER of
PROCEDURENAME from TYPE1 to TYPE2
Warning 131: Modified Output NUMBER of
PROCEDURENAME from TYPE1 to TYPE2
When relaxed port type matching is selected, the Converter
modifies the variable types used in procedure definitions, replacing
types that inherit from other types with the inherited type. Thus,
ENTH_MOL_VAP will be replaced by ENTH_MOL.
Warning 132
Warning 132: File "FORTRANFILE" could not be
opened
The file named could not be opened, so the Fortran in the
procedure or function CODE … $ENDCODE could not be written
out. Fortran files are written to the current directory or the directory
specified for the CODE .dll.
Warning 133
Warning 133: Overriding ComponentList "Default"
with "NAME"
The Converter has inserted a statement that assigns the component
list in the flowsheet, thus overriding the Aspen Custom Modeler
default.
You should check that the Converter has chosen a good default; it
uses the first one in the generated Properties section.
Warning 134
Warning 134: There is no component NUMBER in
component list COMPONENTLISTNAME
The Converter has tried to change an integer subscript into the
corresponding component name and has been unable to do so
because there are no components. This may indicate an error in the
original SPEEDUP file.
Warning 135
Warning 135: Attempt to use component #NUMBER of
COUNT in COMPONENTLISTNAME
The Converter has tried to change an integer subscript into the
corresponding component name and has found that there are
insufficient components in the named component list. This usually
indicates that the Converter is using the wrong component list
because there is insufficient information for a correct match in the
input file or because the input file is incorrect.
Warning 136
Warning 136: Component List NAME1 duplicates
Component List NAME2 and has been eliminated
The components and options in the DECLARE STREAM
definition for the two streams named are identical so only the first
is retained in the .acmf file. All references to NAME1 are changed
into references to NAME2.
Warning 138
Warning 138: Overriding Aspen Custom Modeler 10.0
default for Gear.EventTol with 1.0e-5
The Converter is specifying a value for Gear.EventTol that
corresponds to the SPEEDUP 5 default value. The SPEEDUP 5
default value is different from the Aspen Custom Modeler default
value. The input file specified SuperDAE (explicitly or by default)
and no value for EventTol.
Warning 139
Warning 139: Changing IMPEULER integrator to VSIE
Your input file specifies the IMPEULER integrator and a value for
IniIntStep, which implies a variable step size. This is the same as
requesting Variable Step Implicit Euler (VSIE) in Aspen Custom
Modeler.
Warning 140
Warning 140: Input specifies more than 1
integrator
The ROUTINES list in OPTIONS specifies more than one
integrator; only the first is used. Later ones are retained as
comments. This may be because the SPEEDUP 5 simulation used
mixed-mode integration which is not supported in Aspen Custom
Modeler.
Warning 143
Warning 143: IDENTIFIER is a keyword in Aspen
Custom Modeler 10.0; IDENTIFIER_ substituted
The Converter appends an underscore to identifiers that are Aspen
Custom Modeler keywords. You cannot suppress this warning by
renaming or replacing the identifier in the preferences file.
Warning 144
Warning 144: Identifiers starting with an
underscore are not legal in Aspen Custom Modeler
10.0; XXX prefixed
The Converter prefixes identifiers beginning with an underscore
with three X's so that they will be legal in Aspen Custom Modeler.
You cannot change this prefix, although you can change the name
through the preferences file. This warning is not suppressed by
making preference file changes.
Warning 145
Warning 145: IDENTIFIER starts with a digit;
_IDENTIFIER substituted
This message will only be issued if the input uses quoted
identifiers and one of them starts with a digit (inside the quotes).
Identifiers cannot begin with a digit in Aspen Custom Modeler, so
an underscore is prefixed. This will always be followed by the
previous message, and the final name will be XXX_TOKEN.
Warning 146
Warning 146: IDENTIFIER contained illegal
characters
The identifier specified contained illegal characters which have
been replaced by underscores. This usually arises from names
given in the preferences file.
Warning 148
Warning 148: Changing function call(s) to
procedure equation(s)
The Converter replaces FUNCTION calls with CALL statements in
the .acmf file.
Warning 149
Warning 149: IF nesting has reached a depth of
NUMBER; Consider using TASKs.
Your input contains too many nested IF statements. It is possible
that rewriting parts of the .acmf file as TASKs would be helpful. If
the nesting is too deep, you will be unable to load the file into
Aspen Custom Modeler.
Warning 150
Warning 150: UNIT.VARIABLE already Fixed, INITIAL
ignored
Warning 150: UNIT.VARIABLE already Fixed, PRESET
ignored
Warning 150: UNIT.VARIABLE already Initial,
PRESET ignored
Your input gives contradictory specifications to the named
variable. If a PRESET occurs after a SET or INITIAL, or an
INITIAL after a SET, then the later specification is ignored, and
this warning issued. If the later specification is more binding, no
message is issued: Aspen Custom Modeler uses the last one
encountered. You should check that the variable has the correct
value as well as specification type.
Warning 151
Warning 151: Conversion of Sigma emulation(s) by
Text Processor will need checking
The Converter has detected Text Processor ?REPEAT loops used
to sum over an array or array expression, and has converted these
to SIGMA functions. You should check these; it is often possible
Warning 152
Warning 152: ?IF in CONSTRAINT subsection ignored
One or more text processor ?IF statements in the GLOBAL
constraints subsection have been omitted by the Converter.
Warning 153
Warning 153: Dynamic measurement weight (VALUE)
on DYNEXP ignored
The input specifies a weight for a dynamic experiment in
ESTIMATION. This has been ignored: it is not available in Aspen
Custom Modeler. If the weight is necessary, you should multiply
the weights for all the data points in the experiment by the omitted
value.
Warning 154
Warning 154: Declaration of NAME moved outside
scope of IF statement in TYPENAME
The Converter has moved a conditionally declared variable outside
of the IF that contained it, thus making it unconditional. You
should verify that in doing so, the Converter has not created
multiple declarations of the same instance.
Warning 155
Warning 155: No components for Stream NAME in
Declare
You are using the named stream in an association with a procedure
call requiring properties, but the definition of the stream in declare
does not contain a COMPONENTS list.
Warning 156
Warning 156: THERMO in STREAM1 references a
stream (STREAM2) that has no COMPONENTS, THERMO
ignored
The THERMO keyword appears in the definition of STREAM1 that
references another stream (STREAM2) that does not have any
COMPONENTS defined. The Converter will be unable to change
Warning 157
Warning 157: Input has a normal declaration of
INSTANCENAME and uses text processor array
emulation on the same name. You will need to
rename one or other in the input
Your SPEEDUP 5 input file has a declaration for
INSTANCENAME (usually an array) and uses names of the form
INSTANCENAME?(i), where i is a Text Processor expression.
The Converter maps both of these into the same Aspen Custom
Modeler array, which will cause problems if you have equations of
the form:
INSTANCENAME(?(i)) = INSTANCENAME?(i);
This is usually to allow elements of an array to be passed into a
function or a connection.
You can avoid this by either renaming one or other in the input —
usually it is easier to rename the ordinary array, or by editing the
.acmf file yourself.
Warning 158
Warning 158: Operation assignment(s) involving
Time changed to Equation(s)
Your OPERATION section contains assignments where the right
side is an expression involving TIME (the special variable T in
SPEEDUP 5). These assignments have been changed into
equations and the variables are not specified FIXED.
Warning 162
Warning 162 Parameter <name> changed to
StringParameter
The parameter named is being used to index a componentlist and
therefore has to be a string type in Aspen Custom Modeler™.
Warning 164
Warning 164 Attempt to Transmit/Receive variable
attribute - substituting variable
Your EXTERNAL section contains UBOUND or LBOUND in the
TRANSMIT or RECEIVE lists, or ULAGRANGE or
LLAGRANGE in the TRANSMIT list.
Aspen Custom Modeler does not support the specification of
variable attributes in the Simulation Access Extension lists, so the
Converter automatically adds the name of the variable to the
appropriate list. This may result in duplicate variable warnings
when the file is loaded.
You should modify your EDIEmulation function (or its equivalent)
to access the appropriate attributes of the variables.
Warning 165
Warning 165 Attempt to Transmit/Receive variable
attribute tag-name - ignored
Your EXTERNAL section specifies tag-names for UBOUND,
LBOUND, ULAGRANGE, or LLAGRANGE. These are likely to
generate multiple tag-names in the .acmf file, so the Converter
ignores them.
You can modify your EDIEmulation function (or its equivalent) to
pass appropriate strings to your EDI Fortran, if required.
Warning 167
167 Mixed component offset array accesses: check
.acmf file
An array equation is being sliced using different slices for different
variables. At least one of the variables is indexed on a
ComponentList, you will need to check the .acmf file to ensure that
the converter has chosen the correct sub-set of the component list.
This warning is usually only given once in each model, so you
should check the remainder of the model for similar equations.
This warning is often followed by one or more Warning 168
messages.
Warning 168
168 Modified type of index set of VARIABLE to
StringSet
This warning usually follows a warning 167, and implies that only
some of the variables in the equation are known to be indexed
using component lists. The converter assumes that the slices are in
fact identical, and replaces any integer index sets with lists of
components. Usually this list is a sub-set of a ComponentList
already in use in the model.
defaults 1-5
A difficulties 3-5
examples 2-2, 2-5, 2-7, 2-10, 2-11, 2-12,
Aliases
2-13, 2-14, 2-17, 2-21, 2-24, 2-26, 2-
using 1-8, 1-10
28, 3-3
Allow Extended Character Set option 1-5
files used 1-7
AMEditor 1-6
performing 1-6
Array variables 2-18
Polymers Plus simulations 1-3
sizing 2-22, 2-24
preparing 1-2
Assignments
solutions 3-5
options definitions 2-15
text processor commands 3-2
Converting
B
files 1-6
BINARY stream type 2-5 options 1-5
COPY command 1-2
C
Calculations D
SIGMA 3-4 Declare section
CALL statements 2-20 about 2-3
CDI section stream subsection 2-3
about 2-2 Type subsection 2-3
Commands Defaults
converting 3-2 options 1-5
COPY 1-2 Description property 2-14
Comments Diagnosing errors 1-11
about 2-29 Duplication
ComponentList property 2-4 section names 1-8
Components
lists 2-3, 2-4 E
CONNECT statements 2-11, 2-23
EDIEmulation function 2-9
Connection variables 2-19
Editing
Connectivity statements 2-11
text 1-6
Conversion