Overview
Comment:Added subsection with script for model-specific options.
Fixed typo in url to mtt.sf.net.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/master | trunk
Files: files | file ages | folders
SHA3-256: f4a5b018f85ab1292848dd669bd6aeb9026006cee15660cad6dafbb2ffd7b911
User & Date: geraint@users.sourceforge.net on 2003-10-23 18:14:43
Other Links: branch diff | manifest | tags
Context
2003-10-26
22:55:11
Fixed installation of man page. check-in: 822e802530 user: geraint@users.sourceforge.net tags: origin/master, trunk
2003-10-23
18:14:43
Added subsection with script for model-specific options.
Fixed typo in url to mtt.sf.net.
check-in: f4a5b018f8 user: geraint@users.sourceforge.net tags: origin/master, trunk
18:12:31
Removed info format from doc-base entry. check-in: 4775338407 user: geraint@users.sourceforge.net tags: origin/master, trunk
Changes

Modified mttroot/mtt/doc/mtt.texi from [e874502ffd] to [08446c55e4].

12
13
14
15
16
17
18



19
20
21
22
23
24
25
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28







+
+
+









@comment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@comment  Version control history
@comment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@comment  $Id$
@comment  $Log$
@comment  Revision 1.19  2003/10/10 22:22:18  geraint
@comment  typo.
@comment
@comment  Revision 1.18  2003/09/07 20:41:19  geraint
@comment  *** empty log message ***
@comment
@comment  Revision 1.17  2003/08/19 14:20:38  gawthrop
@comment  Version 5.0 of MTT
@comment  Remove xref errors (spurious spaces)
@comment
417
418
419
420
421
422
423




424
425
426
427
428
429
430
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437







+
+
+
+







User interface

* Menu-driven interface::       
* Command line interface::      
* Options::                     
* Utilities::                   

Options

* Model-specific options::      

Utilities

* Help::                        
* Copy::                        
* Clean::                       
* Version control::             

544
545
546
547
548
549
550
551

552
553
554
555
556
557
558
551
552
553
554
555
556
557

558
559
560
561
562
563
564
565







-
+







Stripped acausal bond graph (sabg)

* Language fig (sabg.fig)::     
* Stripped acausal bond graph (view)::  

Labels (lbl)

* SS component labels ::        
* SS component labels::         
* Other component labels::      
* Component names::             
* Component constitutive relationship::  
* Component arguments::         
* Parameter declarations::      
* Units declarations::          
* Interface Control Definition::  
675
676
677
678
679
680
681
682

683
684
685
686
687
688
689
682
683
684
685
686
687
688

689
690
691
692
693
694
695
696







-
+







* Report (text)::               
* Report (view)::               

Extending MTT

* Makefiles::                   
* New (DIY) representations::   
* Component library ::          
* Component library::           

New (DIY) representations

* Makefile (DIY representations)::  
* Shell-script (DIY representations)::  
* Documentation (DIY representations)::  

1308
1309
1310
1311
1312
1313
1314
















































1315
1316
1317
1318
1319
1320
1321
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376







+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+







       <N> View N levels of hierachy
@item --version 
       print version and exit
@item --versions 
       print version of mtt and components and exit
@end vtable

@menu
* Model-specific options::      
@end menu

@node Model-specific options,  , Options, Options
@subsection Model specific options
@cindex Model-specific options
It is often desirable to keep the options used to build a model associated with the directory in which the model is contained, along with information about compiler options or paths to component libraries. In these cases, it is convenient to create an executable shell script, say @code{call_mtt} which sets environment variables and options before calling mtt proper, for example:
@example
@verbatim
#! /bin/sh
# call_mtt: sets model specific environment and options

## Processor flags

# use 32 bit Reduce
export SYMBOLIC="reduce"

# set compiler debug and optimization options
export MTT_CXXFLAGS="${MTT_CXXFLAGS}\
        -Wall-Wno-unused -Wuninitialized\
        -O1 -march=pentiumpro -save-temps"

## Model flags

# use directory ../.. as base directory
export DIR=${DIR:-${PWD}/../..}

# additional components are in directory ../comp
export MTT_COMPONENTS="${MTT_COMPONENTS}:${DIR}/comp"

# additional constitutive relationships are in ../cr
export MTT_CRS="${MTT_CRS}:${DIR}/cr"

# C header files in ../cr/h
export MTT_CXXINCS="${MTT_CXXINCS} -I${DIR}/cr/h"

# call mtt with model specific options
exec ${MTTPATH}/mtt -cc -cr -i euler -D -optl -ntmpvar 1200 $*
@end verbatim
@end example

which may then be used in place of mtt on the command line,

@example
./call_mtt sys gnuplot view
@end example

@node Utilities,  , Options, User interface
@comment  node-name,  next,  previous,  up
@section Utilities
@cindex Utilities
@pindex Utilities
@strong{MTT} provides some utilities to help you keep track of model
building and to keep things clean and tidy. The commands, and there
2397
2398
2399
2400
2401
2402
2403
2404



2405
2406
2407
2408
2409
2410
2411
2452
2453
2454
2455
2456
2457
2458

2459
2460
2461
2462
2463
2464
2465
2466
2467
2468







-
+
+
+







@menu
* Dynamically linked functions::  
@end menu

@node Dynamically linked functions,  , Simulation code, Simulation code
@comment  node-name,  next,  previous,  up
@subsection Dynamically linked functions

@cindex Compiling C++ files
@cindex mex files
@cindex oct files
Some model representations can be compiled into dynamically loaded
code (shared objects) which are compiled prior to use in other
modelling and simulation environments; in particular, .oct files can
be generated for use in GNU Octave (@pxref{Creating GNU Octave .oct
files}) and .mex files can be generated for use in Matlab
(@pxref{Creating Matlab .mex files}) or Simulink (@pxref{Embedding MTT
models in Simulink}).  The use of compiled (and possibly
3594
3595
3596
3597
3598
3599
3600
3601

3602
3603
3604
3605
3606
3607
3608
3651
3652
3653
3654
3655
3656
3657

3658
3659
3660
3661
3662
3663
3664
3665







-
+







@end example


The old-style lbl files (@pxref{Old-style labels (lbl)}) are NO LONGER
supported -- you are encouraged to convert them ASAP.

@menu
* SS component labels ::        
* SS component labels::         
* Other component labels::      
* Component names::             
* Component constitutive relationship::  
* Component arguments::         
* Parameter declarations::      
* Units declarations::          
* Interface Control Definition::  
3656
3657
3658
3659
3660
3661
3662
3663

3664
3665
3666
3667
3668
3669
3670
3713
3714
3715
3716
3717
3718
3719

3720
3721
3722
3723
3724
3725
3726
3727







-
+







%% ss1 is both a source and sensor
ss1     SS              external,external
%% ss1 acts as a flow sensor - it imposes zero effort.
ss2     SS              0,external
@end example


@node Other component labels, Component names, SS component labels , Labels (lbl)
@node Other component labels, Component names, SS component labels, Labels (lbl)
@comment  node-name,  next,  previous,  up
@subsection Other component labels 
@cindex Other component labels 

In addition to the label there are two information fields,
@pxref{Labels (lbl)}.
They correspond to the constitutive relationship 
4624
4625
4626
4627
4628
4629
4630



4631
4632
4633
4634
4635
4636
4637
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697







+
+
+







# Generated by MTT at Mon Jun 16 15:10:17 BST 1997

# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# %% Version control history
# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# %% $Id$
# %% $Log$
# %% Revision 1.19  2003/10/10 22:22:18  geraint
# %% typo.
# %%
# %% Revision 1.18  2003/09/07 20:41:19  geraint
# %% *** empty log message ***
# %%
# %% Revision 1.17  2003/08/19 14:20:38  gawthrop
# %% Version 5.0 of MTT
# %% Remove xref errors (spurious spaces)
# %%
5564
5565
5566
5567
5568
5569
5570
5571

5572
5573
5574
5575
5576
5577
5578
5624
5625
5626
5627
5628
5629
5630

5631
5632
5633
5634
5635
5636
5637
5638







-
+







@strong{MTT} has a number of built-in mechanisms for the user to extend
its capabilities. As @strong{MTT} is based on `Make' it is unsurprising
that some of these  involve the creation of `make files'. 

@menu
* Makefiles::                   
* New (DIY) representations::   
* Component library ::          
* Component library::           
@end menu

@node Makefiles, New (DIY) representations, Extending MTT, Extending MTT
@comment  node-name,  next,  previous,  up
@section Makefiles
@cindex Makefiles

5600
5601
5602
5603
5604
5605
5606
5607

5608
5609
5610
5611
5612
5613
5614
5660
5661
5662
5663
5664
5665
5666

5667
5668
5669
5670
5671
5672
5673
5674







-
+








TwoLinkGMV_numpar.m: TwoLinkGMV_numpar.txt
        mtt -q TwoLinkGMV numpar m
@end example
All of the files in the line stating `all:' are created when
@strong{MTT} is executed (if they don't already exist).

@node New (DIY) representations, Component library , Makefiles, Extending MTT
@node New (DIY) representations, Component library, Makefiles, Extending MTT
@comment  node-name,  next,  previous,  up
@section New (DIY) representations
@cindex New representations
@cindex DIY representations

It may be convenient to create new representations for @strong{MTT}; in
particular, it is nice to be able to include the result of some
6139
6140
6141
6142
6143
6144
6145
6146

6147
6148
6149
6150
6151
6152
6153
6199
6200
6201
6202
6203
6204
6205

6206
6207
6208
6209
6210
6211
6212
6213







-
+







@item mtt info
      Brings up an xterm containing an info version of the manual
@item mtt hinfo
      Brings up an html browser containing the manual
@item emacs
      type ^h^i followed by mmtt in the command window
@item browser
      point browser to mtt.sf.netb
      point browser to http://mtt.sf.net
@end vtable

@node On-line documentation,  , Manual (Documentation), Documentation
@section On-line documentation
@cindex Components 
@cindex Examples
@cindex Documentation


MTT: Model Transformation Tools
GitHub | SourceHut | Sourceforge | Fossil RSS ]