optimal design of hybrid electric...

160
1 OPTIMAL DESIGN OF HYBRID ELECTRIC VEHICLE by Shifang Li Prasad Challa Rajit Johri Girish Chandra MECHENG/MFG 555 Winter 2008 Final Report Abstract Stringent emission regulations combined with customer demands for improved fuel economy and performance have forced the automotive industry to consider more advanced powertrain configurations. Modern stateoftheart powertrain systems may combine several power sources electric motors, fuel cells and modern engines based on HCCI or PCI technologies. This project aims at reducing the fuel consumption for Hybrid Electric Vehicle, HEV by optimizing the component design and size. HEVs exploit the capacity of an additional energy source aboard to reduce the modulation of the primary energy source (engine). This allows a reduction of fuel consumption and a better sizing for the primary engine. The determination of the way in which these systems have to be sized to meet driver’s torque demand, performance and fuel economy expectations while satisfying federal emission regulations is a complex optimization problem. The vehicle was divided into four subsystems engine, automatic transmission, electrical machinery and propulsion shafts and each subsystem was optimized individually. A fuel economy of about 68% was obtained after complete system optimization.

Upload: vuongnguyet

Post on 22-Apr-2018

216 views

Category:

Documents


2 download

TRANSCRIPT

1  

 

OPTIMAL DESIGN OF HYBRID ELECTRIC VEHICLE by 

Shifang Li Prasad Challa Rajit Johri 

Girish Chandra  

MECHENG/MFG 555 

Winter 2008 

Final Report 

 

Abstract Stringent  emission  regulations  combined  with  customer  demands  for  improved  fuel 

economy  and  performance  have  forced  the  automotive  industry  to  consider  more 

advanced powertrain configurations. Modern state‐of‐the‐art powertrain systems may 

combine several power sources  ‐ electric motors, fuel cells and modern engines based 

on HCCI  or  PCI  technologies.  This  project  aims  at  reducing  the  fuel  consumption  for 

Hybrid Electric Vehicle, HEV by optimizing the component design and size. HEVs exploit 

the  capacity  of  an  additional  energy  source  aboard  to  reduce  the modulation  of  the 

primary  energy  source  (engine).  This  allows  a  reduction  of  fuel  consumption  and  a 

better  sizing  for  the  primary  engine.  The  determination  of  the  way  in  which  these 

systems  have  to  be  sized  to  meet  driver’s  torque  demand,  performance  and  fuel 

economy  expectations  while  satisfying  federal  emission  regulations  is  a  complex 

optimization problem.  

The vehicle was divided into four subsystems ‐ engine, automatic transmission, electrical 

machinery and propulsion shafts and each subsystem was optimized individually. A fuel 

economy  of  about  68%  was  obtained  after  complete  system  optimization.  

2  

Table of Contents

ABSTRACT ............................................................................................................................................. 1 

TABLE OF CONTENTS ............................................................................................................................. 2 

LIST OF FIGURES .................................................................................................................................... 3 

INTRODUCTION ..................................................................................................................................... 4 

SUBSYSTEM DESIGN .............................................................................................................................. 6 

BATTERY (SHIFANG LI) ..................................................................................................................................... 6 Problem statement ............................................................................................................................... 6 Nomenclature ....................................................................................................................................... 7 Mathematical model ........................................................................................................................... 10 Numerical Result ................................................................................................................................. 22 

HCCI ENGINE (PRASAD CHALLA) ..................................................................................................................... 25 Introduction: ....................................................................................................................................... 25 Nomenclature: .................................................................................................................................... 27 Project Description: ............................................................................................................................. 28 Methodology for data extraction and model reduction:..................................................................... 32 Methodology for Optimization: .......................................................................................................... 36 Results and Interpretation: ................................................................................................................. 37 Validation: ........................................................................................................................................... 47 Additional Work: ................................................................................................................................. 48 

AUTOMATIC TRANSMISSION (RAJIT JOHRI) ........................................................................................................ 49 Problem Statement ............................................................................................................................. 49 Nomenclature ..................................................................................................................................... 51 Mathematical Model .......................................................................................................................... 53 Model analysis .................................................................................................................................... 60 Results ................................................................................................................................................. 70 

STRUCTURAL ANALYSIS OF TRANSMISSION SHAFTS (GIRISH CHANDRA) .................................................................... 75 Problem Statement: ............................................................................................................................ 75 Nomenclature : ................................................................................................................................... 76 Mathematical Model: ......................................................................................................................... 78 Model validation: ................................................................................................................................ 87 Model analysis .................................................................................................................................... 88 Optimization: ...................................................................................................................................... 90 

SYSTEM INTEGRATION......................................................................................................................... 93 

SUMMARY MODEL ........................................................................................................................................ 94 RESULTS ..................................................................................................................................................... 97 

CONCLUSION ..................................................................................................................................... 100 

REFERENCE ........................................................................................................................................ 101 

APPENDIX ......................................................................................................................................... 104 

BATTERY (SHIFANG LI) ................................................................................................................................. 104 HCCI ENGINE (PRASAD CHALLA) ................................................................................................................... 113 AUTOMATIC TRANSMISSION (RAJIT JOHRI) ...................................................................................................... 133 STRUCTURAL ANALYSIS OF TRANSMISSION SHAFTS  (GIRISH CHANDRA) ................................................................. 151 

3  

List of Figures FIGURE 1: HEV CONFIGURATION ........................................................................................................................... 5 FIGURE 2:BATTERY OPEN CIRCUIT VOLTAGE ............................................................................................................ 17 FIGURE 3: BATTERY CHARGING RESISTANCE ............................................................................................................ 17 FIGURE 4: BATTERY DISCHARGING RESISTANCE ........................................................................................................ 18 FIGURE 5 GT‐POWER MODEL ............................................................................................................................. 33 FIGURE 6 RESULTS FOR DATA FITTING ................................................................................................................... 35 FIGURE 7 CONTOURS OVER THE SPEED LOAD RANGE ................................................................................................. 40 FIGURE 8 MONOTONICITY‐1 ............................................................................................................................... 42 FIGURE 9 MONOTONICITY‐2 ............................................................................................................................... 43 FIGURE 10 MONOTONICITY‐3 ............................................................................................................................. 44 FIGURE 11 MONOTONICITY‐4 ............................................................................................................................. 46 FIGURE 12: COMPLEX SHIFT MAP ........................................................................................................................ 50 FIGURE 13: BASIC SHIFT MAP ............................................................................................................................. 51 FIGURE 14: SIMULATION MODEL (PARALLEL HYBRID ELECTRIC VEHICLE) ....................................................................... 58 FIGURE 15: SIMULINK MODEL .............................................................................................................................. 58 FIGURE 16: STATEFLOW MACHINE ........................................................................................................................ 58 FIGURE 17: SCALING .......................................................................................................................................... 61 FIGURE 18: FUEL ECONOMY (OBJECTIVE) VS GEAR RATIO MONOTONICITY ANALYSIS ..................................................... 62 FIGURE 19: FUEL ECONOMY (OBJECTIVE) VS UPSHIFT VARIABLES MONOTONICITY ANALYSIS ........................................... 63 FIGURE 20: FUEL ECONOMY (OBJECTIVE) VS DOWNSHIFT VARIABLES MONOTONICITY ANALYSIS ...................................... 64 FIGURE 21: OPTIMIZATION FLOWCHART ................................................................................................................ 69 FIGURE 22: OBJECTIVE VS RUNCOUNTER (IMPROVEMENTS ONLY) .............................................................................. 72 FIGURE 23: OPTIMIZED SHIFT MAP ...................................................................................................................... 72 FIGURE 24: A HOLISTIC VIEW OF THE HEV POWER TRAIN SHOWING SHAFTS 3 AND 4 ...................................................... 81 FIGURE 25: TRANSMISSION GEAR BOX CONTAINING SHAFTS 1 AND 2 .......................................................................... 82 FIGURE 26: CAMPBELL DIAGRAM ......................................................................................................................... 84 FIGURE 27:EFFECT OF VARIATION OF D1 AND D1 ON THE OBJECTIVE FUNCTION. ............................................................ 90 FIGURE 28:: WORK‐FLOW CREATED IN OPTIMUS ..................................................................................................... 91 FIGURE 29:: RESULTS OF OPTIMUS ....................................................................................................................... 92 FIGURE 30: SUBSYSTEM INTERACTION ................................................................................................................... 93 FIGURE 31: SOC EVOLUTION WITH TIME .............................................................................................................. 100 

4  

Introduction With the growing demand from the world community to reduce the emission of carbon 

dioxide, and after a decade of intense research, hybrid electric vehicles (HEV) suddenly 

appear more  viable  and  necessary  than  ever  before.  These  vehicles  either  reduce  or 

eliminate the reliance on fossil fuels. Owing to their dual on‐board power sources and 

regenerative  braking,  HEVs  offer  unprecedented  possibilities  to  pursue  higher  fuel 

economy.  

Conventional  internal  combustion  (IC)  engine‐driven  powertrains  have  several 

disadvantages that negatively affect fuel economy and emissions. Specifically, IC engines 

are over designed  to meet performance  targets such as acceleration and gradeability. 

Oversizing  the engine moves  the operating point away  from optimal operation point. 

Moreover, engine  cannot be optimized  for all  loads and  speed  ranges under which  it 

must  operate.  A  parallel  HEV  allows  engine  and  the  motor  to  drive  the  vehicle 

simultaneously  or  independently.  Hence  engine  can  be  downsized  to  reduce  fuel 

consumption and emission. Also overall control strategy can be developed which allows 

engine to operate in a desired speed‐load range.  

Work on hybrid powertrain optimization has been carried out previously using variety of 

optimization model and simulations. Moore et al  [1] carried out parametric studies  to 

assess  component  size based on  continuous  and peak demand of power  and  torque. 

Zoelch et al.  [2]used dynamic optimization  to calculate optimal electric motor  torque, 

engine torque and CVT gear ratios for a parallel HEV under simple charge‐neutral driving 

cycles. Recently detailed optimization study on EPA driving cycles has been carried out 

by Assanis et al [3].  

The design process requires a system engineering approach, in which the design of each 

component must  be  evaluated  through  the  component’s  contribution  to  the  overall 

system performance.  The design process  typically  starts with  evaluation of  trade‐offs 

associated with  component  sizes  for  a  targeted  fuel economy  and performance.  Fuel 

economy and performance of the vehicle presents a trade‐off  in system design. Bigger 

5  

engine  and  higher  rating  motor  with  large  battery  pack  will  result  in  improved 

performance but will  incur penalty on fuel economy due to  increased weight. Similarly 

smaller engine and reduced battery pack will help in better fuel economy at the cost of 

performance.    Hence  the  vehicle  system  has  trade‐off  between  fuel  economy  and 

performance. This is the motivation for figuring out the optimal component sizing. 

The  vehicle  system  in  this  project  is  configured  as  a  parallel  hybrid with  the  electric 

motor positioned after the transmission. A schematic of the vehicle and the propulsion 

system is given in Figure 1. The engine is connected to the torque converter (TC), whose 

output  shaft  is  then  coupled  to  the  transmission  (Trns).  The  transmission  and  the 

electric  motor  can  be  linked  to  the  propeller  shaft  (PS),  differential  (D)  and  two 

driveshafts (DS), coupling the differential with the driven wheels. 

 

Figure 1: HEV Configuration 

A design optimization framework is used to find the best overall engine‐valve operating 

strategy, gear shift strategy, battery pack and electric machinery size for minimum fuel 

consumption  within  proposed  US  government  performance  criteria.  The  control 

strategy is a rule based strategy based on work done by Chan‐Chiao Lin et al [4].  

The system, vehicle in the present context, is divided into four subsystems. 

Battery                                                 Shifang Li 

HCCI Engine                          Prasad Challa 

Transmission                           Rajit Johri 

6  

Structural Dynamics of propulsion shaft                 Girish Chandra 

All  the subsystems  in vehicle are  interconnected and cannot be optimized  individually 

without affecting the other subcomponent. However, in this project, all subcomponents 

are  optimized  independently  with  nominal  values  for  other  subsystem  parameters. 

Overall  system  optimization will  be  carried  out  later with  optimized  components  to 

arrive at a system wide solution. 

 

Subsystem Design

Battery (Shifang Li)

Problem statement 

Hybrid electric vehicle has  two power  sources, one  is  the engine and  the other  is  the 

battery.  The  existence of  the  battery  in  the  hybrid  electric  vehicle  (HEV)  is  the main 

feature of HEV compared  to conventional vehicles, and  it  is  the very  reason why HEV 

outperforms conventional vehicles in fuel economy and low emissions. When the power 

command  is  low,  the  battery  alone  drives  the  vehicle,  when  the  power  demand  is 

medium,  the  battery  cushions  the  vehicle  power  fluctuations,  thus make  the  engine 

always  work  in  efficient  regions,  which  will  contribute  to  fuel  economy  and  low 

emission. And the battery supplies power for peak demands when the power command 

exceeds the maximum power of the engine. In this case, the battery contributes to the 

improvement  of  the  vehicle  performance.    Furthermore,  the  battery  also  absorbs 

current during regenerative braking events, thus capturing this valuable energy that  is 

dissipated and lost in a conventional vehicle. 

 

Hybrid vehicle operation puts unique demands on the battery when  it operates as the 

auxiliary power source.  In order  to optimize  its operating  life,  the battery must spend 

minimum  time  in overcharge and/or overdischarge. HEV batteries,  in  current designs, 

7  

have voltages of 100‐300 V, or more. As noted above, the battery must be capable of 

furnishing or absorbing large currents almost instantaneously while operating around a 

partial‐state‐of‐charge  baseline  of  roughly  50%  [5].  If  we  have  a  very  big  battery, 

obviously,  it  is  easier  for  the  state  of  charge  to  stay  near  the  partial‐state‐of‐charge 

baseline,  since  the  power  from  or  to  the  battery  is  relatively  small  to  its  capacity. 

Therefore, a big battery will have better operating conditions and consequently a longer 

operating life. 

 

While  at  the mean  time,  vehicle  total mass  has  an  important  influence  on  vehicle 

performance.  Hybrid  electric  vehicle mileage  increases  dramatically  as  vehicle mass 

decreases[6].  The  battery  weight makes  a  great  portion  of  the  whole  mass  of  the 

vehicle,  optimization  of  the  battery  mass  is  of  great  importance  for  reducing  fuel 

consumption,  and  also  smaller battery  lowers  the  cost.  So  the  trade off here  for  the 

battery  is satisfying the power command, containing a good operating condition while 

possessing less weight. 

 

The NiMH battery  in ADVISOR  is employed  for  the optimization design. The battery  is 

composed  of  battery modules,  which  are  composed  of  battery  cells.  The  battery  is 

modeled as a static equivalent circuit[7]. The rule based power management strategy is 

applied to this model. The optimization design objective is to minimize the battery mass, 

which mainly determined by the number of modules in the battery.  

 

Nomenclature 

Index  Symbol  Description Unit 

1  _c batC   Capacity of each module Ah 

2  n   Number of modules 1 

8  

3  m   Module mass kg 

4  γ   Mass packaging factor 1 

5  batV   Battery voltage Volt 

6  maxV   Battery maximum voltage Volt 

7  ocV   Open circuit voltage volt 

8  batI   Battery current Amp 

9  chgI   Battery charging current Amp 

10  disI   Battery discharging current Amp 

11  _ minchgI   Maximum charging current Amp 

12  _ maxdisI   Maximum discharging current Amp 

13  dR   Discharging resistance ohms 

14  cR   Charging resistance ohms 

15  s   State of charge 1 

16  maxs   Maximum SOC 1 

17  mins   Minimum SOC 1 

18  dess   Desired SOC 1 

19  sd 

Changing rate of SOC 1 

20  _ minrrb   Regenerative braking charging rate limit  1 

9  

21  _ maxrd   Discharging rate limit 1 

22  _ minrc   Charging rate limit 1 

23  a 

Battery charging controller gain 1 

24  cmdP   Wheel power command W 

25  evP   EV mode power level W 

26  eP   Engine power W 

27  batP   Battery power W 

28  chgP   Battery charging power W 

29  disP   Battery discharging power W 

30  _ _ maxc disP   Maximum  discharging  power  of  each 

module 

31  _ _ minc chgP   Minimum charging power of each module  W 

32  _ maxchgP   Battery maximum charging power W 

33  _ maxdisP   Battery maximum discharging power W 

34  _ minbatP   Battery minimum power W 

35  rbP   Regenerative braking effective power W 

 

 

 

 

10  

Mathematical model 

1. Objective function 

The objective of the optimization design is to minimize the battery mass for the 

objective of the whole vehicle to have optimal mileage, while at the same time 

maintain the battery to operate at good conditions for the sake of  its operating 

life.  

Objective function:  

min n m γ× ×  

 

2. Constraints: 

a) Physical Constraints 

The battery has to operate at its healthy region, the power, current and voltage 

should never exceed its limit. 

 

_ max( , , , )chg chg rb ev chgP SOC SOC P P P− ≤

 

_ max( , , , )dis chg rb ev disP SOC SOC P P P− ≤

 

_ max 0ev disP P− ≤ 

_ min 0bat rbP P− ≤  

_ max ( ) 0chg bat batI I P− ≤ 

_ max( ) 0bat bat disI P I− ≤ 

max( ) 0bat batV P V− ≤  

1( )ocV f SOC=  

11  

2 ( )disR f SOC=  

( )3chgR f SOC=  

00

d bat

c bat

R PR

R P≥⎧

= ⎨ <⎩  

2 4

2ococ bat

bat

V V RPI

R

− −=

 

2 4

2ococ bat

bat

V V RPV

+ −=

 

2 4

2ococ bat

bat

V V RNsd

RC

− −= −  

_ max _ _ maxchg m chgP n P= ×  

_ max _ _ maxdis m disP n P= ×  

 

b) Practical Constraints 

The  state  of  charge  of  the  battery  should maintain  in  a  range which will  not 

damage the battery. The charging and discharging efficiency should be  less than 

the EV mode power level should be less than the maximum power of the battery 

and the regenerative braking effective power should be larger than the minimum 

power of the battery which indeed is large enough to charge the battery. And the 

open circuit voltage and discharging and charging resistance are functions of the 

state  of  charge.  The  function  will  be  obtained  based  on  curve  fitting  of  the 

experimental data in PSAT. 

 

_ min 0rrrb sd− ≤  

12  

_ min 0crc sd− ≤  

_ max 0dsd rd− ≤  

0n− ≤  

200 0n− ≤  

10000 0a− ≤  

200000 0a − ≤  

0.3 0s− ≤  

0.9 0s − ≤  

1000 0eP− ≤  

40000 0eP − ≤  

40000 0rP− − ≤  

0rP ≤  

minif SOC SOC≤  

0disP =  

( )chg chgP s sα= −  

bat chgP P=  

min maxif s s s< <  

0rb cmdif P P< ≤  

13  

0disP =  

0chgP =  

0batP =  

cmd rbif P P≤  

0disP =  

chg cmdP P=  

bat chgP P=  

0 cmd evif P P< ≤  

dis cmdP P=  

0chgP =  

bat disP P=  

max&cmd ev cmd eif P P P P> <

( )chg chgP s sα= −  

dis chgP P= −  

bat chgP P=  

maxcmd eif P P≥  

maxdis cmd eP P P= −  

0chgP =  

14  

bat disP P=  

maxif s s>  

0cmdif P ≤  

0disP =  

0chgP =  

0batP =  

0 cmd evif P P< ≤  

dis cmdP P=  

0chgP =  

bat disP P=  

max&cmd ev cmd eif P P P P> <

( )chg chgP a s s= −  

dis chgP P= −  

bat chgP P=  

maxcmd eif P P≥  

maxdis cmd eP P P= −  

0chgP =  

bat disP P=  

15  

3. Design Variables and Parameters:  

Index  Variables Parameters

1  n   _ min (0.0003)rrb  

2  a   _ max (0.002)rd  

3  s   _ min (0.001)rc  

4  evP   _ _ max (315.8)c disP  

5  rbP   _ _ min ( 315.8)c chgP −  

6  _ min (500)batP  

7  _ min (20000)evP  

8  _ min ( 291.34)chgI −  

9  _ max (660.21)disI  

10  (1.08)λ  

11  _ (540)c batC  

12  (0.9979)m  

13  max (0.9)s  

14  min (0.3)s  

15  _ max (9)cV  

 

 

16  

4. Model Simplification 

In practice, the battery will work on different conditions due to the current state 

of  charge  and  the  power  command  from  or  to  the  battery,  as  stated  in  the 

practical  constraints  in  the model  above. While  for  our  optimization  purpose, 

some  of  the  conditions will  be  dominated  by  the  extreme  conditions,  that  is, 

some  of  the  constraints  are  inactive.  For  the  battery  voltage,  the  possible 

maximum  value  will  be  reached  when  the  battery  is  being  charged  and  the 

current state of charge  is at the minimum. So this  is one of the dominant cases 

for  battery  voltage  constraint.  Another  dominant  case  is when  the  battery  is 

charged  by  regenerative  braking,  the  minimum  wheel  command  power  will 

contribute  to  the  possible  maximum  battery  voltage.  Similar  with  battery 

voltage,  for the battery current, the possible maximum current will be reached 

when  the  battery  is  being  charged  at minimum  state  of  charge  or when  the 

wheel power command reached minimum. For the battery power, the maximum 

discharging  power will  be  reached when  the  battery  power  from  the  battery 

reached  the  maximum  value  in  a  driving  cycle,  and  the  possible  maximum 

charging power also occurs when  the minimum  regenerative braking power or 

maximum  charging  power  from  the  engine  are  reached.  Therefore,  we  can 

simplify the model by eliminating the different operation conditions stated in the 

practical  constraints  in  the model  above  and  considering  only  the  dominant 

conditions, which result in the summary model bellow. 

 

In  order  to  get  the  functions  of  the  battery  open  circuit  voltage,  discharging 

resistance and charging resistance of the battery module. I applied curve fitting 

to  the  experimental  data  of  the  battery  of  Toyota  Pirus[8].  The  battery  open 

circuit voltage  is approximated by third order polynomial, while the discharging 

and charging resistance are approximated by fourth and third order respectively.  

 

5 4 3 2(17.29 37.172 29.323 10.977 2.6624 7.2332)ocV n s s s s s= − + − + +    

17  

4 3 2(0.01486 0.05091 0.08153 0.05206 0.03783)dR n s s s s= − + − +    

3 2( 0.0149 0.031987 0.020225 0.023541)cR n s s s= − + − +    

 

The curve fitting figure is showing below.  

 Figure 2:Battery open circuit voltage 

 

 Figure 3: Battery charging resistance 

18  

 Figure 4: Battery discharging resistance 

 

5. Summary model 

min n m γ× ×  

Subject to: 

g1:   _ _ max 0ev c disP nP− ≤  

g2:   _ _ min 0c chg rbnP P− ≤  

g3:   _ _ min ( 0.5) 0c chgnP α− − ≤  

g4:   2

_ max

40

2oc oc ev

dis

V V RPI

R− −

− ≤  

g5:   2

_ min

40

2ococ rb

chg

V V RPI

R

− −− ≤  

g6:   2

_ max

40

2ococ rb

c

V V RPnV

+ −− ≤  

g7:   2

_ min_

40

2oc rb oc

c bat

V RP Vrrb

RnC

− −− ≤  

19  

g8:   2

_ min_

4 ( 0.1)0

2oc oc

c bat

V R Vrc

RnC

α− − −− ≤  

g9:   2

_ max_

40

2oc ev oc

c bat

V RP Vrd

RnC

− −− − ≤  

g10: 0n− ≤  

g11: 200 0n− ≤  

g12: 10000 0a− ≤  

g13: 200000 0a − ≤  

g14: 0.3 0s− ≤  

g15: 0.9 0s − ≤  

g16: 15000 0eP− ≤  

g17: 40000 0eP − ≤  

g18: 40000 0rP− − ≤  

g19: _ min 0r batP P+ ≤  

h1:  5 4 3 2(17.29 37.172 29.323 10.977 2.6624 7.2332) 0ocV n s s s s s− − + − + + =

h2:  4 3 2(0.01486 0.05091 0.08153 0.05206 0.03783) 0dR n s s s s− − + − + =  

h3:  3 2( 0.0149 0.031987 0.020225 0.023541) 0cR n s s s− − + − + =  

 

 

 

20  

6. Model Analysis 

The model  reduction  is done  in part 3  (4) model  simplification, and no  further 

reduction can be made based on monotonicity analysis. Because the constraints 

are nonlinear and very complex, explicit solutions with respect to the variables 

cannot be found. However, in order to reduce computation burden, Taylor series 

are employed  to approximate  the nonlinear constraints  to quadratic  form. The 

nonlinear constraints become following. 

g4:  2

2

2_ max

61.9628 2.25016 0.0258965 0.00675047

0.0000987605 6.32135 8 30.2269

0.0242916 0.0000728748 24.6996 0

ev

ev ev

ev dis

n n P

nP e P s

ns P s s I

− + +

− + − −

− + + − ≤ 

g5:  2

_ min

2

2

11.8682 0.355285 0.00276912 0.00413003

0.0000323878 1.00993 8 3.14753 0.0242916

0.0000691885 1.40955 0

chg r

r r

r

I n n P

nP e P s ns

P s s

+ − + −

+ − − − +

+ + ≤ 

g6:  2

2

2_ max

22.884 7.59686 0.00008291 - 0.00231361.9898510 6 1.19391 8 76.28220.24673 0.000171785 63.5685 0

r

r r

r c

n n PnP e P s

ns P s s nV

− + −

− − − − +

+ − − − ≤ 

g7:  2

_ min

2

2

(0.000999444 0.0000321704 2.63007 7 1.90564

7 2.05119 9 3.11705 13 0.0000734718

3.55172 7 2.13545 9 0.0000435047 ) 0r r r

r

rrb n e n

e P e nP e P s

e ns e P s s

− − + − −

− + − − − −

+ − + − + ≤ 

g8:  2

_ min

2

2

(0.000999444 0.0000321704 2.63007 7 1.14338

7 1.23071 9 1.12214 13 0.0000734718 3.551727 1.28127 9 0.0000435047 ) 0

rc n e n e

a e na e a s ens e as s

− − + − +

− − − − − − +

− − − + ≤ 

g9:  2

2

2_ max

( 0.00517751 0.000185935 1.83374 6 3.13197 7

4.79564 9 1.95103 12 0.000951056 4.47576

7 2.24922 9 0.00076233 ) 0

e

e e

e

n e n e P

e nP e P s e

ns e P s s rd

− − + − − − −

+ − − − + +

− − − − − ≤ 

21  

Optimization approach: 

(1) Based  on  the  quadratic  form  constraints,  and  the  original  constraints,  the 

function ‘fmincon’ in Matlab is applied to solve the optima. And the scaling of 

the  variables  and  the  constraints  are  implemented.  Corresponding  to 

different  initial guess, the optimal result  is different.   And since the feasible 

space  has  very  irregular  bounders  due  to  the  existence  of  coupled  term 

under  square  root,  the  result  easily  goes  into  the  infeasible  space  or  just 

converges to a local minima. The Matlab code is in part 7. 

 

(2) The  nonlinear  constraints  are  linearized  by  Taylor’s  expansion  in  order  to 

avoid the inconvenience of the irregular bounders of the feasible space in the 

optimization  approach  (1)  to  transform  the  problem  into  a  linear 

programming  problem.  The  function  ‘linprog’  is  employed  to  solve  the 

optimization problem. The matlab code is in part 7. 

 

The linearized model is summarized as following: 

min n m γ× ×  

Subject to: 

g1:   315.8 0evP n− ≤  

g2:   315.8 0rbn P− − ≤  

g3:   315.8 0.5 0n a− + ≤  

g4:   598.2472 2.25016 0.00675047 30.2269 0evn P s− − + − ≤  

g5:   279.4718 0.355285 0.00413003 3.14753 0rn P s− − − − ≤  

g6:   22.884 1.4031 0.0023136 76.2822 0rn P s− − − + ≤  

22  

g7:   0.001299444 0.0000321704 1.90564 7 0.0000734718 0rn e P s+ + − + ≤  

g8:   5.56 7 0.0000321704 1.14338 7 0.0000734718 0e n e a s− + − − + ≤  

g9:   0.0032 0.000185935 3.13197 7 0.000951056 0en e P s− + − − ≤  

g10: 0n− ≤  

g11: 200 0n− ≤  

g12: 10000 0a− ≤  

g13: 200000 0a − ≤  

g14: 0.3 0s− ≤  

g15: 0.9 0s − ≤  

g16: 15000 0eP− ≤  

g17: 40000 0eP − ≤  

g18: 40000 0rP− − ≤  

g19: 500 0rP − ≤  

 

Numerical Result The result is based on the linear programming method. The number of iterations 

is around 10. Table 1 is the parameter study of the minimum EV mode power.  

 

Table 1 Parameter study of the minimum EV mode power 

Pev_min  n  a  s  Pe  Pr  Mbat

1000  18.9994  10000  0.45449  3270.8772 ‐2786.6344  20.4762

23  

3000  18.994  10000  0.46784  4447.0823 ‐3.59.364  20.4762

5000  18.9994  10000  0.49878  5392.9236 ‐3968.0021  20.4762

6000  18.9994  10000  0.50168  6000  ‐3894.555  20.4762

7000  22.1659  10848  0.53562  7000  ‐4639.9712  23.8889

9000  28.4991  12235.4176 0.47208  9000  ‐4354.9471  30.7143

10000  31.6656  12891.3332 0.53799  10000  ‐5702.6437  34.127

12000  37.9987  14521.2646 0.68994  12000  ‐7793.9693  40.9525

14000  44.3319  15701.18  0.82716  14000  ‐6757.9139  47.7779

16000  50.665  18415.5397 0.734  16000  ‐7202.1006  54.6033

18000  56.9981  21141.2116 0.72554  18000  ‐8088.7489  61.4287

20000  63.3312  29769.2059 0.54387  20000  ‐9954.1539  68.2514

21000  66.4978  22878.7827 0.57993  21000  ‐8942.3169  71.6668

 

The battery EV mode power is set to be the maximum power the battery should 

be  able  to  provide.  And  it  contributes  to  the  activity  of  the  constraint  for 

maximum discharging rate. As we can see from the table, when the minimum EV 

mode power is larger than 5 KW, the EV mode power equals to the minimum EV 

mode power. In reality, the EV mode power is around 10KW. As the minimum EV 

mode  power  becomes  larger,  the  number  of  modules  in  the  battery  pack 

increases as anticipated, because  larger battery which  contains more modules 

can provide more power. When the number of modules in the battery increases, 

we  need  to  increase  the  controller  gain  to  satisfy  the minimum  charging  rate 

from the engine power. While for the desired state of charge, it depends on the 

battery  type.  Because  the  functions  of  open  circuit  voltage,  charging  and 

24  

discharging resistance are based on the experimental data of the specific NiMH 

battery,  the  optimization  result  can  only  be  interpreted  as  that  for  a  specific 

power command scenario, such as a driving cycle,  the set point of  the desired 

state of charge as shown in the table above will provide the best efficiency of the 

battery. We  see  that  the  optimization  result  of  the  desired  state  of  charge  is 

around the middle point of the cap of the state of charge, except very few points 

which reached 0.8. The reason for the deviation of the few points may be due to 

the polynomial approximation error or even the experimental error. Generally, it 

is consistent with  the actual healthy and efficient  region of  the battery. As  for 

the  regenerative  braking, we  know  that  larger  start  value  of  the  regenerative 

braking  power  (one  should  notice  that  the  regenerative  braking  power  is 

negative) will make more usage of the braking and contribute to fuel efficiency. 

However,  the battery has a power  limit below which  the power applied  to  the 

battery will have no effect. And for engineering practical application, we have a 

minimum charging rate for regenerative braking, and this condition may impose 

another  constraint  for  the  maximum  regenerative  braking  power.  From  the 

optimization result, we see that the minimum charging rate do provide an active 

constraint. Therefore, the optimization result  is reasonable, and  it provides the 

optimal set points for the variables in the battery and battery controller design. 

And since the number of modules  in the battery pack should be an  integer, we 

have  to  choose  the  least  integer  larger  than  the  optimal  value  of  the  battery 

number.  

 

 

 

 

 

25  

HCCI Engine (Prasad Challa)

Introduction: 

In  light of the stringent norms on the emissions pertaining to the vehicles, the present 

automakers  have  put  their  focus  primarily  on  the  fuel  economy  improvement  of  the 

vehicle as well as meeting the emission standards of the vehicle. This is due to the fact 

that  the vehicle‐out emissions per mile  travelled are a direct  function of  the emission 

per unit fuel consumed and the fuel economy of the vehicle. 

The  improvement  in the fuel economy has taken new strides through these years with 

the  successful elimination of  the  throttle  in an SI engine using advanced  technologies 

like DISI, which give more flexibility to go to higher compression ratios thus boosting the 

performance. The same is true on the Diesel side too with variable valve strategy being 

applied  to  the  Diesel  engine  to  boost  the  performance.  In  addition  to  these,  the 

introduction of  turbochargers and superchargers has  improved  the efficiency of  these 

engines greatly.  

In  spite  of  all  these  efforts  towards  improvement  in  the  fuel  economy,  the  vehicle 

suffers from the non‐conformance to the emission standards  in these vehicles. Though 

there has been a  lot of  significant  improvement  in  the emissions  field  too,  the after‐

treatment devices remain pretty costly. One main problem faced on the emissions front 

is  the  inverse  relation of  the  soot and NOx emissions. The only way  to deal with  this 

problem  is  to  have  cooler  combustion  of  a  homogeneous  charge.  This  is  precisely 

achieved by the Homogeneous Charge Compression Ignition (HCCI) engine. 

 

Problem Statement: 

The engine of  interest  in the present project  is a 4‐cylinder HCCI engine operated on a 

variable valve‐train. HCCI engine is different from the conventional SI and CI engines in 

its ignition characteristics. The mixture in a HCCI engine is homogeneous and there is no 

26  

direct trigger for the  initiation of combustion  in the engine. The heated residual gas of 

the previous cycle is utilized to trigger the combustion in the present cycle. One way to 

change the combustion characteristics of the engine is to alter the residual gas trapped 

in the cylinder so as to control the combustion timing and duration. This is enabled by a 

flexible valve‐train strategy through the change of valve  lift, timing and valve duration. 

Another object of  interest  in the present study  is the  intake charge temperature  in the 

way it affects the temperature at TDC thus affecting the combustion phasing. 

The  HCCI  engine  will  be  modeled  in  GT‐Power,  commercial  software  for  engine 

modeling. The HCCI engine used for the project is developed as a part of research work 

at Automotive Research Center (ARC). A typical recompression valve strategy 102will be 

dealt with as a part of  the present project. The valve  lift, duration and  timing will be 

manipulated to adjust the residual gas trapped in the cylinder. The performance of any 

engine  depends  on  several  conflicting  variables,  the main  hindrances  being  knocking 

and emissions [2]. For the HCCI engine, because of its unconventional way of combustion, 

the range of operation  is  limited and hence cannot operate at all  loads and speeds. All 

these  factors affect  the performance of  the engine a great deal and partly negate  the 

performance  benefits  of  using  a HCCI  engine.  The modeling  objective  of  the  present 

study  is  the  minimization  of  the  fuel  consumption,  meeting  all  the  emission 

requirements  and  avoiding  the engine  knock,  through  the use of  variable  valve‐train, 

over  a particular drive  cycle.    The optimization of other  sub‐systems will be dealt by 

having engine maps as a function of the variables of interest.  

The  residual  gas  fraction  of  the  engine  can  be  successfully manipulated  to  be  at  the 

desired level for each load so as to have the combustion at its optimal point (50% burn 

angle at around 5‐10). However with the increase in the load of the engine, the rate of 

pressure rise increases in the engine if the combustion happens near the TDC. Hence to 

prevent  the  engine  from  its  knocking  behavior,  the  combustion  is  retarded,  which 

affects  the  fuel  economy  of  the  engine.  Also  with  the  increase  in  in‐cylinder 

temperatures with the  increase  in  load, the production of NOx  in the engine  increases 

27  

which  is  highly  undesirable. With  these  constraints  in  place,  the  engine  is  prevented 

from operating at its optimum. Hence the emissions and knock provide trade‐offs on the 

engine performance optimization. 

Nomenclature: 

1. REC – Recompression (Negative valve overlap) valve strategy 

2. REB – Rebreathing (Exhaust re‐opening) valve strategy  

3. L ‐ Lift –> Maximum valve lift (mm) 

4. Ph – Valve Phase  (REC) (deg CAD) 

5. Phmax – maximum phase (deg CAD) 

6. Phmin – minimum phase (deg CAD) 

7. dur – Duration of valve‐opening (deg CAD)  

8. VA – Valve acceleration (mm/deg2) 

9. B – Bore of the cylinder (mm) 

10. S – Stroke (mm) 

11. CR – Compression Ratio (1) 

12. Tin – Intake Temperature of the charge (air) (K) 

13. IVC – Intake Valve Closing (deg CAD) 

14. FR – Fueling Rate (mg/cycle) 

15. Pin – Intake Pressure (bar) 

16. Pex – Exhaust Pressure (bar) 

17. Pmax – Maximum in‐cylinder Pressure (bar) 

18. (dP/dt)max – Maximum in‐cylinder Pressure rise rate (kPa/sec) 

19. RGF – Residual Gas Fraction (%) 

20. phi – Equivalence Ratio (1) = (FAR)act/(FAR)stoich 

21. Lambda – Air‐Fuel Ration (1) = 1/phi 

22. TTDC – Temperature at TDC (K) 

23. T60 – Temperature at 60 BTDC (K) 

24. Tth – Threshold for T60 to avoid misfire in the engine (K) 

25. CA50 – Crank Angle of 50% burn (deg CAD) 

26. mpg – Fuel Economy (mpg) 

27. Pe – Engine Power (kW) 

28  

28. CoV – Coefficient of variation between two consecutive cycles (%) 

29. RI – Ringing Index (MW/m2) 

30. SNOx ‐ Specific NOx number (g/kg fuel)  

31. tau, Torque – Torque output of the Engine (N‐m) 

32. N – Speed of the Engine (rpm) 

33. R – Gas constant (J/kg/K) 

34. γ – Ratio of specific heats (1) 

35. BSFC – Brake Specific Fuel Consumption (g/kW‐hr) 

36. NMEP – Net Mean Effective Pressure 

37. BMEP – Brake Mean Effective Pressure 

38. NSFC – Net Specific Fuel Consumption 

39. ieff – Indicated Efficiency 

40. beff – Brake Efficiency 

 

Project Description: 

Objective:  

The ideal objective for the present study is to maximize the fuel economy of the engine 

for the entire trajectory of torque and speed sweeps. However,  it  is highly  improbable 

to deal with all  the possible  transients  from one  speed‐  load point  to another  speed‐ 

load point  for any engine.  In addition to this with the  increased coupling between the 

engine cycles, the task becomes a lot tougher for an HCCI Engine.  

Hence, the objective of the present study is constrained to finding the optimal operating 

conditions for each of the steady state speed‐load points. The engine will be operated at 

multiple speeds and loads. The optimal operational conditions for these cases are taken 

and  they  will  be  interpolated  for  all  the  intermediate  cases  to  provide  an  optimal 

operational condition  for any speed and  load within  the  range of operation. However 

the  operational  characteristics  of  the  engine  bear  a  strong  dependence  on  the 

constraints  chosen  and  try  to  hinder  the  possibility  of  operating  at  the  best  fuel 

29  

economy point, possible otherwise. These constraints also impact the operational limits 

of the engine.   

Minimize: 

  mpg = f1(B, S, CR, N, CA50, phi) 

where[5]   

  phi = f2(Pin, RGF) 

  CA50 = f3(TTDC,  RGF, phi, CR)   

  TTDC = f4(RGF, CR, Tin) 

  RGF = f5(L, Ph, Pin, Pex)    

Outputs: 

  tau = f8(B, S, N, CR, CA50, RGF)   

 

Constraints: 

1. Engine  knocking  has  disastrous  consequences  for  the  engine,  since  it  leads  to  the 

catastrophic wear of  the  combustion  chamber walls,  through particle wear  for moderate 

knocking,  to welding  for  serious knocking. This  is due  to  the contact between  those walls 

and high temperature gases resulting from the unwanted explosion. Hence the knock in the 

engine should be below the acceptable limits[3]. 

 

                                                                                              

2. With the strigent emission norms, the engine‐out NOx emissions are slowly approaching 

zero. Hence  the engines are  to be operated so as  to  reduce  the emissions.  In view of  the 

above, Nox production in the present engine is restricted to a maximum of 1 g/kg fuel[4]. 

 

2max

2

max

max /421. mMWRT

P

dtdP

IR <⎟⎟

⎜⎜

⎛⎟⎟⎠

⎞⎜⎜⎝

≈ γ

β

γ

30  

 

 

 

 

                                                                                

3. As the HCCI operation is highly coupled with the previous cycle operation, there will be 

variations in the behavior of the engine. The simulations will be performed till the variations 

of the key parameters determining the performance of the engine go below 3%. If not, the 

simulation is rendered unstable.   

CoV < 3%                      

4. Operating  the HCCI  engine  rich  causes  lot  of  soot  formation  and  degradation  in  the 

performance. Hence the engine operation is limited to happen only with lean mixtures. 

phi < 1 

 

5. As  the  negative  valve  overlap  increase,  the  intake  valve  closes  later  into  the 

compression stroke  thus decreasing  the effective compression  ratio. After a certain point, 

the engine operation become ineffective as the compression ratio goes down drastically. To 

avoid  such  inefficient  points  to  increase  the  computational  efficiency  the  IVC  was 

constrained in the simulation. 

IVC < 620 

Proceeding thus, 

T60 > Tth (Avoid misfire) 

Tin < 1000C (Avoid excessive heating) 

Phmax‐Phmin < 100 deg (Mechanical constraint on the valve) 

Phmin < Ph < Phmax (Constraint of valve phasing) 

VA < 0.015 mm/deg2 (Mechanical constraint on the valve) 

4 mm < L < 10 mm 

 

The  optimized  engine will  then  be  used  in  conjunction with  other  subsystems  to 

optimize the fuel economy of the entire vehicle following a drive cycle. 

fuel g/kg 1 <)(

][46

][][

1)1(2][

32

1

12

kgFuelinputNOSNOx

NONO

RRR

RVdtNOd

e

=

=

++

−=

α

αα

31  

 

Design variables and parameters: 

Sl. No  Variables  Parameters 

1  L  B = 80.5 mm 

2  Ph  S = 88.2 mm 

3  dur  CR = 10.5 

4  Tin  Pin = 1 bar 

5  Tau (output)  Pex = 1 bar  

6  BSFC (output)  N = 1000‐5000 rpm 

7  BMEP (output)  FR = 7 – 18 mg/cycle 

8    Phmax = 40 deg 

9    Phmin = ‐60 deg 

Table 1 Variables and Parameters 

 

Summary: 

Optimization objective: 

  Min (‐mpg) 

Subject to:  

Sl. No.  Constraint 

1  RI <4 MW/m2 

2  SNOx <1 g/kg fuel 

3  CoV < 3 % 

4  Lambda > 1 

5  IVC < 620 deg 

6  T60 > Tth 

7  Tin < 1000C 

8  Phmax‐Phmin < 100 deg 

9  Phmin < Ph < Phmax 

32  

10  VA < 0.015 mm/deg2 

11  4 mm < L < 10 mm 

Table 2 Constraints 

 

Varying: 

Sl. No  Variables 

1  L 

2  Ph 

3  dur 

4  Tin 

Table 3 Design Variables 

With parameters: 

Sl. No  Parameters 

1  B = 85 mm 

2  S = 95 mm 

3  CR = 10.5 

4  Pin = 1 bar 

5  Pex = 1.05 bar  

6  N = 1000‐4000 rpm 

7  FR = 7 – 18 mg/cycle 

Table 4 Parameters 

Methodology for data extraction and model reduction: 

a. Extraction: 

The  variables  of  interest  in  the  present  study  are  valve  parameters  namely  lift, 

duration, timing and the intake charge temperature. The primary focus of the study 

is  to optimize  these  variables over  the entire  range of  torque  and  speed  sweeps.  

The engine outputs at each torque and speed need to be observed to get an idea of 

the relation between the valve parameters and the constraints. In order to do this, a 

33  

set of about 27,000 points were chosen for the engine to operate at. These points 

covered a good range of torque speed map as well as the valve parameter sweeps. 

The points were chosen based on the Latin hypercube method. Using these design 

points,  a DoE was  performed  for  the  engine  simulation  in GT‐Power  as  shown  in 

Figure 5. 

 

Figure 5 GT­Power Model 

Through the entire run of cases, the engine misfired in about 20,000 which is quite a 

huge  number.  This  exemplifies  the  high  sensitivity  of  the  HCCI  engine  to  the 

operational conditions because of its high temperature sensitivity. This also explains 

the  reason  for  the  reduced  operational  load  of  the  HCCI  engine.  Neglecting  the 

misfire conditions, the 7,000 firing points were then taken to extract the outputs of 

interest out of the engine simulation. However, the analysis of T60 was done with the 

entire set of 27,000 points to estimate the misfire  limit of the engine based on the 

pre‐combustion temperatures. 

GGTT--PPoowweerr HHCCCCII SSyysstteemm MMooddeell

User subroutines

Combustion

Heat transfer

NOx Twall

Fuel

Injector

Valve Actuation Strategy

NOx model

Zeldovich Mechanism

34  

b. Data fitting: 

Once  the data was post‐processed  and extracted out of  the  simulation,  a  simpler 

polynomial model was  tried on  the constraints as well as  the objective  function  in 

order  to  ease  the  calculation  complexity.  However  the  simpler models were  not 

friendly enough as the matrix became singular, when a second‐order polynomial was 

attempted at. 

1. Normalization: 

The matrix was much  better  after  the  normalization  of  variables.  The 

singularity vanished and the initial curve‐fit with the normalized variables 

was not able to capture the non‐linearity of the variables. As the last step 

in the process, a full fifth order polynomial was attempted at, to capture 

the variation.  

0,,,,,50

..

654321

654321

654321654321

≥≤+++++≤

Σ=

aaaaaaaaaaaa

tsxxxxxxaVar aaaaaa

k

  

where x1, x2, x3, x4, x5, x6 were the normalized variables of L, dur, Ph, 

Tin, RPM, FR respectively. 

 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

Actual

Est

imat

ed

BMEP

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-0.2

0

0.2

0.4

0.6

0.8

1

1.2

Actual

Est

imat

ed

Lambda

35  

 

Figure 6 Results for Data Fitting 

The plots in Figure 6 show the estimated values plotted against the actual 

variable values. The first two plots seem to be well within the acceptable 

range. However  the constraints namely RI and SNOx were not properly 

captured  in  their  nature  even  with  this  complex  data  fitting.  The 

constraints,  especially  RI,  display  a  lot  of  scatter which  is  undesirable. 

(NOTE: The values in the plots are normalized output variables) 

Also, though all the other variables appear to be well within the accuracy 

bounds,  the  normalization  of  the  variables  provide  a  further  problem. 

The base numbers,  that  these  values  are normalized with, have  a high 

magnitude.  Hence  even  a  small  degree  of  scatter  in  the  normalized 

variable accounts for a appreciable change in the actual variable. With all 

these factors hindering further progress in that direction, the model was 

simplified  using  interpolation  (table‐lookup)  with  6  independent 

variables.  

2. Interpolation: 

The interpn function in matlab was tried to interpolate the data. However 

because of the lack of accuracy in estimating the variation of RI, a matlab 

toolbox  Liblip  was  used.  The  function  interpolates  the  variables 

effectively  under  the  assumption  that  the  variables  are  Lipschitz 

functions  i.e.  they  have  an  upper  bound  on  their  growth  rate.  The 

36  

function provided reasonable estimates of the constraints as well as the 

objective function. 

The  Lipschitz  interpolation  routine  requires  the  information  about  the 

growth  rate  of  the  function  and  the  upper  bound  of  the  same.  This  is 

called the Lipschitz constant and an improper estimate of it can result in 

bad  interpolation  of  the  data.  For  the  present  study,  the  optimal 

estimates of  the  Lipschitz  function were  taken by observing  a  range of 

constants and their performance. A cubic interpolation routine was used 

after finding out the Lipschitz constant, to interpolate the variable values. 

3. Comparison of model reduction routines: 

Though  the  table  lookup  method  seems  inferior  to  the  data  fitting 

method  in  the  sense of usability,  the  accuracy was much better  in  the 

interpolation  routine.  When  the  same  function  was  fitted  by  the 

polynomial,  the  values  went  out  of  bounds  owing  to  the  high  non‐

linearity in the function behavior. This was, however, avoided by the use 

of interpolation. 

Methodology for Optimization: 

The basic aim of the present study is to optimize the HCCI engine performance at each 

speed‐load point in the entire range. In order to achieve this one has to find the optimal 

points  at  various  speeds  and  loads  of  the  engine.  The  study  should  also  be  able  to 

highlight  the  misfire  capabilities  of  the  engine  owing  to  a  low  pre‐combustion 

temperature. In order to take care of this, a threshold for T60 is proposed, which is only a 

linear function of the engine speed. 

⎟⎠⎞

⎜⎝⎛+=

100025580 RPMTth  

37  

However,  because  of  the  error  in  the  interpolation  function,  the  constraints  were 

relaxed by about 20% to take care of the interpolation errors including RI and SNOx. The 

optimization was then performed with the relaxed constraints at various speed and load 

points. A  total of about 500 points on  the engine map were  taken and  the optimal L, 

dur,  Ph  and  Tin  were  found  at  each  of  these  operating  conditions  satisfying  the 

constraints. 

The optimization was done in matlab in a direct method without using any optimization 

algorithms.  The  four  normalized  variables  x1,  x2,  x3,  x4  were  changed  at  a  fine 

resolution of 0.01 and all the outputs were captured through the optimization routine. 

The  output was  then  checked  for  the  constraint  violation  and  the  best  BSFC  (mpg) 

points were picked  from  the  valid points. The  reason  for not using Optimus/iSight  to 

solve  the  optimization  problem was  due  to  the  amount  of  time  it  takes  for  a  single 

optimization in iSight. The optimization to happen at 500 various points is not feasible in 

the limited amount of time. 

 Results and Interpretation: 

Table 5 presents a  few select points out of the 500 speed‐load points. At these points 

the optimal L, D, Ph, Tin are found out using the simple optimization run. 

RPM  mdotf  L  D  Ph  Tin  BSFC  Torque  RI  SNOx  lambda  T60  Cov 1000  3.997  0.179  0.938  34.56  358.15  249.113  36.098  0.392  0.007  1.692  603.69  0.123 1000  4.503  0.22  0.924  33.48  358.15  242.626  37.203  0.392  0.007  1.693  595.1  0.123 1000  4.998  0.282  0.91  33.48  358.15  234.421  38.689  0.392  0.007  1.707  600.13  0.123 1000  5.504  0.22  0.934  33.48  348.15  244.748  36.835  0.392  0.007  1.714  601.74  0.123 1000  5.999  0.548  0.848  40  323.15  232.765  43.254  0.206  0.139  2.086  616.08  0.047 1000  6.505  0.548  0.848  40  323.15  228.835  46.377  0.206  0.139  2.086  624.96  0.047 1000  7  0.507  0.834  37.83  323.15  226.493  47.56  0.25  0.166  2.091  644.21  0.047 1000  7.495  0.486  0.829  32.39  373.15  226.798  47.444  0.263  0.173  2.092  630.09  1.433 1000  13.501  0.241  0.853  11.73  323.15  177.469  87.937  2.034  0.581  1.713  599.72  0.024 1000  13.996  0.23  0.91  12.82  328.15  173.908  92.954  2.034  0.986  1.681  613.46  0.024 1252  3.997  0.179  0.948  40  358.15  252.828  34.323  0.392  0.007  1.7  601.92  0.123 1252  4.503  0.2  0.943  40  358.15  250.436  35.488  0.392  0.007  1.711  601.79  0.123 1252  4.998  0.241  0.924  34.56  358.15  249.166  36.089  0.392  0.007  1.679  612.03  0.123 1252  5.504  0.282  0.91  33.48  358.15  241.74  37.359  0.392  0.007  1.676  602.69  0.123 1252  5.999  0.19  0.905  33.48  353.15  248.894  36.134  0.392  0.007  1.714  604.41  0.123 1252  6.505  0.548  0.848  40  348.15  226.893  44.336  0.21  0.142  2.07  623.67  0.123 1252  12.995  0.343  0.886  24.78  323.15  177.304  86.378  2.034  0.581  1.705  622.71  2.866 

38  

1252  13.501  0.312  0.919  14.99  348.15  178.271  87.55  1.716  0.471  1.599  604.6  0.046 1252  13.996  0.384  0.863  11.73  338.15  175.136  92.467  1.716  0.935  1.677  601.91  0.221 1252  14.502  0.2  0.853  17.17  323.15  173.906  92.959  2.034  1.021  1.704  627.69  0.024 1500  3.997  0.312  0.829  40  358.15  266.792  30.452  0.316  0.008  1.77  644.35  0.047 1500  12.995  0.21  0.867  12.82  343.15  178.813  84.874  3.672  0.723  1.552  613.2  0.027 1500  13.501  0.363  0.9  16.08  348.15  181.541  85.745  1.716  0.471  1.593  627.82  0.046 1500  13.996  0.435  0.877  14.99  343.15  178.449  88.412  1.716  0.471  1.625  627.82  1.768 1500  14.502  0.425  0.882  14.99  323.15  177.674  90.643  2.034  0.762  1.715  627.69  2.799 1500  14.997  0.2  0.919  17.17  323.15  175.975  94.479  2.034  0.581  1.71  635.43  1.852 1752  10.003  0.384  0.844  21.52  343.15  217.865  52.045  2.297  0.033  1.533  662.3  0.124 1752  11.004  0.179  0.957  26.95  373.15  205.919  64.666  0.811  0.065  1.466  625.47  0.078 1752  12.005  0.292  0.957  36.74  333.15  193.137  71.145  2.301  0.853  1.652  620.07  1.893 1752  12.995  0.435  0.967  33.48  333.15  198.319  75.582  2.301  0.853  1.69  636.97  2.869 1752  13.501  0.241  0.867  6.295  323.15  184.973  84.172  2.034  0.581  1.624  629.81  1.732 2000  10.003  0.241  0.929  37.83  323.15  214.889  52.97  3.496  0.147  1.618  711.19  0.058 2000  11.004  0.179  0.957  19.34  373.15  211.971  59.867  0.811  0.065  1.502  627.08  0.078 2000  12.005  0.241  0.943  30.21  373.15  206.265  67.309  0.811  0.302  1.651  632.59  0.078 2000  12.995  0.179  0.962  30.21  373.15  204.857  72.689  0.811  0.935  1.6  621.14  0.078 

2000  13.501  0.456  0.858 ‐

7.839  373.15  192.966  82.75  1.901  0.116  1.412  620.13  1.817 2000  13.996  0.415  0.858  7.382  373.15  194.022  84.494  1.901  0.116  1.605  629.96  2.443 2500  9.002  0.2  0.924  40  358.15  265.348  39.559  4.035  0.052  1.541  740.41  0.034 2500  10.003  0.179  0.957  33.48  338.15  244.367  47.791  0.502  0.008  1.537  642.05  0.54 2500  11.004  0.404  0.848  12.82  373.15  223.678  54.873  3.954  0.732  1.521  673.23  0.064 2752  8.001  0.445  0.829  25.87  328.15  266.343  36.893  1.68  0.009  1.723  662.08  0.07 2752  9.002  0.363  0.905  40  358.15  274.041  37.331  1.951  0.014  1.48  649.26  0.034 3000  5.999  0.548  0.848  26.95  323.15  323.069  27.714  3.348  0.012  1.733  657.68  0.782 3000  7  0.517  0.858  30.21  348.15  299.88  30.493  1.635  0.005  1.755  697.69  0.595 3000  7.495  0.476  0.839  28.04  323.15  295.164  31.864  3.348  0.012  1.782  681.36  0.782 3000  8.001  0.496  0.863  18.25  328.15  304.383  32.457  3.348  0.012  1.548  680.02  0.782 3252  11.004  0.486  0.948  31.3  368.15  312.245  38.703  0.667  0.378  1.582  679.97  1.055 3252  12.005  0.537  1  12.82  373.15  270.897  49.582  2.301  0.003  1.522  652.4  1.055 4500  3.997  0.19  0.725  26.95  348.15  933.588  4.118  2.373  1.001  2.071  747.88  0.057 4500  4.503  0.21  0.711  18.25  348.15  929.871  4.157  3.419  1.048  2.072  747.88  0.057 

Table 5 Optimization Results 

The  contour  plots  in  Figure  7  summarize  the  variations  of  the  constraints  and  the 

optimal variables across the entire speed load range.  

39  

 

Engine Speed (RPM)

Torq

ue (N

-m)

Valve Lift Multiplier

0 1000 2000 3000 4000 50000

50

100

150

200

0.2

0.25

0.3

0.35

0.4

0.45

0.5

0.55

0.6

Engine Speed (RPM)

Torq

ue (N

-m)

Duration Multiplier

0 1000 2000 3000 4000 50000

50

100

150

200

0.75

0.8

0.85

0.9

0.95

Engine Speed (RPM)

Torq

ue (N

-m)

Valve Phasing

0 1000 2000 3000 4000 50000

50

100

150

200

-5

0

5

10

15

20

25

30

35

Engine Speed (RPM)

Torq

ue (N

-m)

Brake Mean Effective Pressure

0 1000 2000 3000 4000 50000

50

100

150

200

4

6

8

10

12

14

16

18

20

Engine Speed (RPM)

Torq

ue (N

-m)

Intake Charge Temp

0 1000 2000 3000 4000 50000

50

100

150

200

330

340

350

360

370

Engine Speed (RPM)

Torq

ue (N

-m)

BSFC

0 1000 2000 3000 4000 50000

50

100

150

200

200

300

400

500

600

700

800

40  

 

Figure 7 Contours over the speed load range 

The optimal BSFC points were then developed as a function of speed and Torque points 

so as to determine the optimal BSFC for the engine map for the entire range. This map 

can now be used  to  integrate with  the  automatic  transmission  to  generate  the  valve 

profiles in order to achieve the optimal BSFC at speed‐load point. The optimal variables 

for the present study, however, were left as table look‐ups for simplicity. 

 

Engine Speed (RPM)

Torq

ue (N

-m)

Rinding Index

0 1000 2000 3000 4000 50000

50

100

150

200

0.5

1

1.5

2

2.5

3

3.5

Engine Speed (RPM)

Torq

ue (N

-m)

Specific NOx Emission

0 1000 2000 3000 4000 50000

50

100

150

200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Engine Speed (RPM)

Torq

ue (N

-m)

Coefficient of Variance

0 1000 2000 3000 4000 50000

50

100

150

200

0.5

1

1.5

2

2.5

Engine Speed (RPM)

Torq

ue (N

-m)

Temp. at 60 BTDC

0 1000 2000 3000 4000 50000

50

100

150

200

600

620

640

660

680

700

720

740

41  

Interpretation: 

The constraints and the objective function as mentioned before are highly non‐linear in 

nature  to be able  to observe  the monotonicity. There are  four  independent variables 

that  are  to be  looked  at.  This makes  the process more  complex.  In order  to  simplify 

things,  the  monotonicity  of  one  variable  on  the  objective  function  as  well  as  the 

constraints was observed. The relevant constraints for this purpose were written in the 

negative null form and the constraint table is modified from Table 2 as follows in Table 

6: 

Sl. No.  Constraint 

g1  RI – 4 < 0 

g2 SNOx – 1 < 0 

g3  CoV ‐ 3 < 0 

g4  1 ‐ Lambda < 0 

g5  IVC ‐620 < 0 

g6  Tth ‐ T60 < 0 

g7  Tin ‐100 < 0 

g8  Phmin – Ph < 0 

g9  Ph ‐ Phmax < 0 

g10  VA ‐ 0.015 < 0 

g11  4 – L < 0 

g12  L – 10 < 0 

Table 6 

The plots in the following figures Figure 8 ‐ Figure 11 illustrate the monotonicity of 

one variable over the constraints and the objective function, keeping every other 

variable a constant. Note however that the trend may not be reflective of each and 

every point over the design space. This serves as an initial estimate of the system 

from which one can carry on. Note also that the graphs were obtained using the 

42  

interpolation techniques to emulate the original model. Hence the accuracy at some 

points might have taken a hit. 

 

 

Figure 8 Monotonicity‐1 

 

0 0.5 112

14

16

18NMEP w.r.t. x1

x1

NM

EP

0 0.5 17

8

9

10

11BMEP w.r.t. x1

x1

BM

EP

0 0.5 1180

200

220

240

260NSFC w.r.t. x1

x1

NS

FC

0 0.5 1300

350

400

450BSFC w.r.t. x1

x1B

SFC

0 0.5 115.2

15.4

15.6

15.8NMEP w.r.t. x2

x2

NM

EP

0 0.5 19

9.5

10BMEP w.r.t. x2

x2

BM

EP

0 0.5 1205

210

215

220

225NSFC w.r.t. x2

x2

NS

FC

0 0.5 1340

360

380

400BSFC w.r.t. x2

x2

BS

FC

43  

 

 

Figure 9 Monotonicity‐2 

0 0.5 113

14

15

16NMEP w.r.t. x3

x3

NM

EP

0 0.5 17

8

9

10BMEP w.r.t. x3

x3

BM

EP

0 0.5 1200

220

240

260NSFC w.r.t. x3

x3

NS

FC

0 0.5 1300

350

400

450BSFC w.r.t. x3

x3

BS

FC

0 0.5 115

15.5

16

16.5

17NMEP w.r.t. x4

x4

NM

EP

0 0.5 19

9.5

10

10.5BMEP w.r.t. x4

x4

BM

EP

0 0.5 1206

207

208

209

210NSFC w.r.t. x4

x4

NS

FC

0 0.5 1330

335

340

345

350BSFC w.r.t. x4

x4

BS

FC

0 0.5 130

35

40

45ieff w.r.t. x1

x1

ieff

0 0.5 130

35

40

45

50Torque w.r.t. x1

x1

Torq

ue

0 0.5 11

1.5

2

2.5lambda w.r.t. x1

x1

lam

bda

0 0.5 1-160

-150

-140

-130

-120IVC w.r.t. x1

x1

IVC

44  

 

 

Figure 10 Monotonicity‐3 

0 0.5 136

37

38

39

40ieff w.r.t. x2

x2

ieff

0 0.5 137

38

39

40

41Torque w.r.t. x2

x2

Torq

ue

0 0.5 1

1.4

1.6

1.8

2lambda w.r.t. x2

x2

lam

bda

0 0.5 1-160

-150

-140

-130IVC w.r.t. x2

x2

IVC

0 0.5 132

34

36

38

40ieff w.r.t. x3

x3

ieff

0 0.5 130

35

40

45Torque w.r.t. x3

x3

Torq

ue

0 0.5 11

1.5

2

2.5lambda w.r.t. x3

x3

lam

bda

0 0.5 1-180

-160

-140

-120

-100IVC w.r.t. x3

x3

IVC

0 0.5 138.5

39

39.5ieff w.r.t. x4

x4

ieff

0 0.5 138

40

42

44Torque w.r.t. x4

x4

Torq

ue

0 0.5 11.35

1.4

1.45

1.5lambda w.r.t. x4

x4

lam

bda

0 0.5 1-150

-145

-140

-135IVC w.r.t. x4

x4

IVC

45  

 

 

0 0.5 1504

505

506

507

508T60 w.r.t. x1

x1T6

0

0 0.5 10

50

100RI w.r.t. x1

x1

RI

0 0.5 10

50

100SNOx w.r.t. x1

x1

SN

Ox

0 0.5 10

5

10

15

20CoV w.r.t. x1

x1

CoV

0 0.5 1500

510

520

530T60 w.r.t. x2

x2

T60

0 0.5 10

50

100

150RI w.r.t. x2

x2

RI

0 0.5 10

10

20

30SNOx w.r.t. x2

x2

SN

Ox

0 0.5 10

5

10

15

20CoV w.r.t. x2

x2

CoV

0 0.5 1400

500

600

700

800T60 w.r.t. x3

x3

T60

0 0.5 10

10

20

30RI w.r.t. x3

x3

RI

0 0.5 10

20

40

60SNOx w.r.t. x3

x3

SN

Ox

0 0.5 10

10

20

30

40CoV w.r.t. x3

x3

CoV

46  

 

Figure 11 Monotonicity‐4 

From  the  observation  of  the  variable  and  constraint  dependency  the  monotonicity 

analysis can be performed for the system. The results are presented in Table 7.  

  x1  x2  x3  x4 f  ‐  u  ‐  + g1  u  +  +  ‐ g2  ‐  ‐  u  u g3  +  ‐  ‐  ‐ g4  ‐  u  u  u g5        +    g6  u  ‐  +  + g7           + g8      ‐   g9        +    g10  +  ‐     g11  ‐          g12  +       

Table 7 

  + indicates positive monotonicity 

  + indicates negative monotonicity 

  u indicates that the monotonicity is unknown 

  Space indicates that the variable does not appear in the constraint 

0 0.5 1505.75

505.8

505.85

505.9T60 w.r.t. x4

x4

T60

0 0.5 110.498

10.5

10.502

10.504

10.506RI w.r.t. x4

x4

RI

0 0.5 10

2

4

6SNOx w.r.t. x4

x4

SN

Ox

0 0.5 10

10

20

30

40CoV w.r.t. x4

x4

CoV

47  

NOTE:  There were  some  cases where  a unidirectional monotonicity  is  indicated even 

though  it  is not exactly  the case. This  is owing  to  the  fact  that  the data was obtained 

through interpolation. 

The  monotonicity  analysis  is  not  by  any  means  the  ultimate  representative  of  the 

system.  As  can  be  observed  in  Table  5,  over  the  entire  range  of  points,  there were 

points wherein a constraint becomes active and it is not always the case. There were a 

few cases where the optimal is in the interior of the design space. Hence a clear analysis 

on  the monotonicity  for  the  system  cannot be performed.  The plots  in  Figure  7  also 

illustrate this fact. 

Validation: 

As  the whole  optimization  run was  done  based  on  the  surrogate models  that were 

developed  using  DoE,  there  is  quite  a  need  to  validate  the  model  to  check  its 

genuineness. Hence,  for the present study, the model was compared with the original 

GT‐Power model to check the emulative ability of the interpolation.  

  L  D  P  Tin RPM mdotf NMEP BMEP ieff  BSFC  RI SNOx lambdaGT  0.23  0.91  12.82  328 1000 14 17.48 15.827 38.7  265.34  0.97 4.9203 1.325Est  0.23  0.91  12.82  328 1000 14 18.28 21.532 39.7  173.91  2.03 0.986 1.681GT  0.548  0.848  18.25  348 2000 7 ‐1.583 ‐2.121 ‐7  ‐299  0 0 1.335Est  0.548  0.848  18.25  348 2000 7 11.9 10.618 38.8  231.73  3.55 0.028 1.611GT  0.179  0.948  24.78  343 3000 11 11.6 9.3173 32.7  287.4  15.1 15.097 1.019Est  0.179  0.948  24.78  343 3000 11 13.3 11.189 36.5  264.62  1.75 1.029 1.583GT  0.568  0.972  34.56  323 4000 5.504 ‐1.475 ‐4.715 ‐8.3  ‐980  0 0 1.158Est  0.568  0.972  34.56  323 4000 5.504 10.22 5.651 34.9  425.6  0.52 0.001 1.539

Table 8 

The comparison shows that the model  is still not good enough to replicate the engine 

behavior.  The  difference  is  even more  evident  in  the  RI  and  SNOx  limits.  The model 

however does reasonably well with the NMEP prediction. The misfire  limits and the RI 

limits were not captured properly. This  indicates  that  there  is a need  to  look at more 

points to understand the engine better. This can be done as a next step. 

 

48  

Additional Work: 

 

1. Simulate the engine at more points to understand the engine better. This will  improve 

the interpolation capability of the algorithm with more closely knit design space. 

 

2. Because  of  its  limited  operational  range  and  start‐up  difficulties,  a  HCCI  engine  is 

generally  used  in  conjunction with  an  SI  engine.  The map  of  the HCCI  Engine,  hence,  is 

imposed on the map of the SI engine to  increase the operational range of the engine. The 

HCCI  operational  range will  be  initially  investigated  and  then  is  superimposed  on  the  SI 

engine map  to  obtain  increased  operational  range.  However  the  present  study will  not 

include the optimization of the SI runs owing to the time constraint. 

 

3. Try out the rebreathing valve strategy for a higher level comparative study between the 

valve strategies that can be employed at different loads. 

 

4. Use  Optimus/iSight  to  validate  the  optimal  results  that  are  achieved  in  the  present 

study. 

 

5. Try  to optimize  the ultimate valve  strategy employing different  strategies at different 

load conditions, based on the observations at SAE HCCI symposium[6] 

 

 

 

 

 

 

 

49  

Automatic Transmission (Rajit Johri)

Problem Statement 

Automatic  transmission  is  one  of  the  most  important  vehicle  level  subsystems 

influencing  the  fuel economy. Automatic  transmissions are widely used  in  vehicles  to 

enable  engine  to  run  in  a  desired  range  of  speeds.  The  design  and  tuning  of  these 

automatic transmissions play a crucial role in performance, fuel economy and emissions. 

Although parallel hybrids have another power source and engine can be operated with 

greater  flexibility,  automatic  transmissions  are  still  required  for  proper  engine 

operation. 

HCCI engines offer greater fuel economy and better emissions to conventional SI engine 

but  present  design  of  HCCI  engines  are  limited  in  their  operating  range.  HCCI 

combustion can only be sustained in a narrow band of operating speeds. Commercially 

available HCCI engines operate  these engines  like  conventional  SI engine outside  this 

range. With hybrids, because of additional prime mover, engine can be operated  in a 

narrow range and automatic transmission is the key enabler. 

The objective of  this  subproject  is  to optimize  the  conventional  five  speed automatic 

transmission  (AT) design  to enable HCCI engine  to operate  in  the desired  speed band 

and  hence  thereby  reducing  fuel  consumption  and  emissions  but  still  maintaining 

certain performance indices. The project will involve developing models, and optimizing 

the design for minimum fuel consumption and emissions.  

Dynamic optimization of AT has been carried out previously, Numazawa et al. [10], and 

is  a  well‐studied  problem.  Traditionally  the  gear  ratios  and  the  shift  schedule  are 

designed  from  a  static  analysis  and  the  performance  is  not  optimum  in  a  dynamic 

operation.  The  maps  are  further  tweaked  to  achieve  desired  level  of  operation  by 

calibration engineers.  Jacobson et al.  [13] pointed out  this deficiency  in  the AT design 

and  tried  to  obtain  shift  schedule  by  minimizing  a  cost  function  consisting  of  fuel 

consumption & performance criteria  (e.g.,  the acceleration  time). Pfeiffer and Haj‐Fraj 

50  

[11], [12] pursued above approach and applied dynamic programming to discretize gear 

shift phase  into various  stages, and optimized  the AT  for a cost  function consisting of 

passenger comfort and performance. 

Shift schedules are  functions of vehicle‐state parameters,  like velocity and  throttle,  to 

select the optimum gear. The goal of this subsystem optimization is to minimize the fuel 

consumption while maintaining  engine  in  the  desired  operating  speed  band. Overall 

vehicle  performance  indices  like  acceleration,  top  speed  and  towing  capacity  are 

satisfied.  

  

Figure 12: Complex Shift Map 

In  reality  shift  schedule  are  very  complex  (Figure  12)  but  to  keep  the  number  of 

variables and constraints small, a simple shift schedule (Figure 13) with straight lines will 

be used. For this optimization, the parameters of the engine, electric motor and vehicle 

are  fixed. The  shift  schedule  is highly dependent on other  subsystems and will be  re‐

optimized later with other subsystems to achieve optimal design.  

51  

 

Figure 13: Basic Shift Map 

 

Nomenclature  

System 

MPG  Fuel economy (mpg) 

Transmission 

V12   Vehicle velocity(mph) at 0% throttle during 1‐2 gear up‐shift  

V23   Vehicle velocity(mph) at 0% throttle during 2‐3 gear up‐shift  

V34   Vehicle velocity(mph) at 0% throttle during 3‐4 gear up‐shift  

V45   Vehicle velocity(mph) at 0% throttle during 4‐5 gear up‐shift  

V21   Vehicle velocity(mph) at 0% throttle during 2‐1 gear down‐shift 

52  

V32   Vehicle velocity(mph) at 0% throttle during 3‐2 gear down‐shift 

V43   Vehicle velocity(mph) at 0% throttle during 4‐3 gear down‐shift 

V54   Vehicle velocity(mph) at 0% throttle during 5‐4 gear down‐shift 

A12   Angle extended by 1‐2 gear up‐shift line with x‐axis (deg) 

A23   Angle extended by 2‐3 gear up‐shift line with x‐axis (deg) 

A34   Angle extended by 3‐4 gear up‐shift line with x‐axis (deg) 

A45   Angle extended by 4‐5 gear up‐shift line with x‐axis (deg) 

A21   Angle extended by 2‐1 gear down‐shift line with x‐axis (deg) 

A32   Angle extended by 3‐2 gear down‐shift line with x‐axis (deg) 

A43   Angle extended by 4‐3 gear down‐shift line with x‐axis (deg) 

A54   Angle extended by 5‐4 gear down‐shift line with x‐axis (deg) 

GR1   1st gear ratio 

GR2   2nd gear ratio 

GR3   3rd gear ratio 

GR4   4th gear ratio 

GR5   5th gear ratio 

EFFGR  Efficiency of Gears

FDR  Final drive ratio

Js  Propeller shaft inertia (kg/m2)

Ks  Propeller shaft stiffness (Nm/rad)

53  

Bs  Propeller shaft damping (Nm/s/rad)

Engine 

N  Engine speed (RPM)

tau  Engine torque (Nm)

Pe  Engine Power (kW)

NEL  Minimum engine RPM allowed

NEH  Maximum engine RPM allowed

 

Mathematical Model 

1. Objective 

Minimize fuel consumption over FUDS cycle 

f = Min (–MPG) 

MPG =  func(V12, V23, V34, V45, A12, A23, A34, A45, V21, V32, V43, V54, A21, 

A32, A43, A54, GR1, GR2, GR3, GR4, GR5) 

2. Design Variables 

The  gear  ratios  are  discrete  variables  (fractions).  Nevertheless  for  this 

optimization study the values are assumed to be continuous so as to be able to 

apply  continuous  optimization  algorithm.  The  values  returned  by  the 

optimization algorithm need  to be  then slightly changed  to production  feasible 

gear ratios. Model has following design variables .  

Gear ratios – GR1, GR2, GR3, GR4 and GR5 

Up Shift variables  ‐ V12, V23, V34, V45, A12, A23, A34 and A45 

54  

Down shift variables – V21, V32, V43, V54, A21, A32, A43 and A54 

3. Parameters 

Transmission 

  EFFGR    ‐  0.987 

  Js    ‐  0.0275 kg/m2 

  Ks    ‐  14325 Nm/rad 

  Bs    ‐  46 Nm/s/rad 

Engine  

NEL    ‐  1000 RPM 

NEH    ‐  4000 RPM 

 

4. Constraints 

Constraints  1  through  20  are  constraints  to  ensure  that  the  up‐shift  and 

downshift  curves  are  separated  from  each  other  sufficiently  and  do  not  cross 

each other. Drivability of vehicle depends on these lines closeness. There should 

be sufficient gap between up‐shift curve and a corresponding downshift curve to 

prevent  hysteresis.  Closer  upshift  and  downshift  lines  result  in  excessive 

gearshifts  or  ’hunting’.  Constraints  21  through  36  are  the  lower  and  upper 

bounds for the variables.  

Constraint 37  is to make sure that gears are sorted properly.   Constraints 38 to 

42 are the  lower and upper bounds on the gear ratio. They have been selected 

based on experience based on packaging requirements and industry standards. 

55  

In addition  to  these  constraints,  the vehicle must be able  to 0‐60 acceleration 

timing less than 9 seconds for acceptable performance. It is a non linear implicit 

constraint obtained by simulating the model. 

V23≥2+V12                 (1)  

V34≥2+V23                 (2)  

V45≥2+V34                (3) 

‐V12+V21+2≤0               (4)  

‐V23+V32+3≤0               (5)  

‐V34+V43+4≤0               (6)  

‐V45+V54+4≤0               (7) 

V21 ‐ 0.85*V12 ≤0              (8) 

V32 ‐ 0.85*V23 ≤0              (9) 

V21 + 1 ‐ V32 ≤0              (10) 

V32 + 1 ‐ V43 ≤0              (11) 

V43 + 1 ‐ V54 ≤0              (12) 

V34 ‐ 8 ‐ V43 ≤0              (13) 

V45 ‐ 8 ‐ V54 ≤0              (14) 

(100/tan(A12) + V12) ‐ (100/tan(A23) + V23) ≤0      (15) 

(100/tan(A23) + V23) ‐ (100/tan(A34) + V34) ≤0      (16) 

(100/tan(A34) + V34) ‐ (100/tan(A45) + V45) ≤0      (17) 

(100/tan(A21) + V21) ‐ (100/tan(A32) + V32) ≤0      (18) 

56  

(100/tan(A32) + V32) ‐ (100/tan(A43) + V43) ≤0      (19) 

(100/tan(A43) + V43) ‐ (100/tan(A54) + V54) ≤0      (20) 

60≤ A12 ≤85                (21)  

60≤A21≤87                (22)  

50≤A23≤80                 (23)  

55≤A32≤85                 (24)  

50≤A34≤80                 (25)  

50≤A43≤80                 (26)  

45≤A45≤75                 (27)  

45≤A54≤75                 (28)  

0≤V12≤10                 (29)  

0≤V23≤30                 (30)  

0≤V34≤40                 (31)  

0≤V45≤50                 (32) 

0≤V21≤10                 (33)  

0≤V32≤30                 (34)  

0≤V43≤40                 (35)  

0≤V54≤50                 (36) 

GR1>GR2>GR3>GR4>GR5>0            (37) 

4≤ GR1 ≤5                (38)  

57  

2.6≤GR2≤3.5                (39)  

1.5≤GR3≤2.4                 (40)  

1≤GR4≤1.6                 (41)  

0.8≤GR5≤1.2                 (42)  

NEL<N<NEH                (43) 

5. Simulation Model 

To  evaluate  various  designs  of  AT  and  shift  schedule  require  simulating  the 

proposed  design  candidate  with  Vehicle  engine  simulation  (Figure  14).    The 

vehicle  level  models  were  used  from  the  Vehicle  Engine  SIMulation,  VESIM 

library.  High  fidelity  transmission  model  was  developed  to  capture  the  shift 

dynamics using simulink/stateflow (Figure 15) and (Figure 16). Also, steady state 

engine maps will be used for optimization studies. The aim was to optimize the 

design  for the vehicle running on Federal Urban Driving Schedule  (FUDS) cycle, 

which is used by EPA to evaluate fuel economy. Since the optimization problem 

was very expensive for complete FUDS cycle, a custom driving cycle, of first 400 

seconds was used  instead.   Also,  to evaluate  the performance  indices  like 0‐60 

acceleration a custom cycle was developed. 

 

58  

 

Figure 14: Simulation Model (Parallel hybrid electric vehicle) 

 

Figure 15: Simulink model 

 

Figure 16: Stateflow machine 

VEHICLE DYNAMICSSimulink based

brake

T wheel _rear

T wheel _front

speed

w wheel

SI ENGINE

load torque

driver demand

engine speed

engine torque

POWER MANAGEMENTParallel

w eng

decel

accel

wheel speed (rad/s)

soc

Power Limit

Brake

engine cmd

motor demand (Nm)

Gain

-K-

Demand Torque (Nm)

motor speed (rad/s)

motor torque (Nm)

net Power

Driving Cycle

Load Input Data

DRIVETRAINParallel

w pump

driver demand

w shaft

motor torque

T pump

T shaft

w prop

DRIVERno preview

configuration 2

speed set

vehicle speed

decel

accel

0

power req'd into bus (W)

SOC

Power limit

impeller torque

vehiclespeed

output torque

T_ratio3

w_ratio2

Gear #1

rad /s --> mph _ref

-K-

Threshold Calculation

run() gear

throttle (%)

down_th

up_th

Shift Logic

speed

up_th

down_th

gear

tsh

CALC_THL

Scope

Blending

Gear

t_shift

w_ratio

T_ratio

-->%

100Throttle

2

w shaft1

gear_state 1fourthentry: gear = 4 ;en:ts h=t*typ ;

fi fthentry: gear = 5 ;en:ts h=t*typ ;

th irdentry: gear = 3 ;en:ts h=t*typ ;

secondentry: gear = 2;en:ts h=t*typ;

fi rstentry: gear = 1;en:ts h=t*typ ;

se lection_stateduring: CALC _TH ;

2

steady_state

upshiftingen:typ =1;

downshiftingen:typ =-1;

UP1

UP UP1

UP1

DOWN

2

DOWN

2DOWN

2DOW N

[speed > up_th & t > abs(ts h)+Ts]1

[speed < down_th & t > abs(ts h)+Ts]2

[speed > down_th]

2

after (TWAIT ,tick)[speed <= down_th]{gear_state.DOWN;}

1after (TWAIT ,tick)[speed >= up_th]{gear_state.UP;}

1

[speed < up_th]

2

59  

6. Summary Model 

f = Min (–MPG) 

subject to  

g1 = 2 + V12 ‐ V23 ≤0 

g2 = 2 + V23 ‐ V34 ≤0 

g3 = 2 + V34 ‐ V45 ≤0 

g4 = V21 + 2 ‐ V12 ≤0 

g5 = V21 ‐ 0.85*V12 ≤0 

g6 = V32 + 3 ‐ V23 ≤0 

g7 = V32 ‐ 0.85*V23 ≤0 

g8 = V43 + 4 ‐ V34 ≤0 

g9 = V54 + 4 ‐ V45 ≤0 

g10 = V21 + 1 ‐ V32 ≤0 

g11 = V32 + 1 ‐ V43 ≤0 

g12 = V43 + 1 ‐ V54 ≤0 

g13 = V34 ‐ 8 ‐ V43 ≤0 

g14 = V45 ‐ 8 ‐ V54 ≤0 

g15 = (100/tan(A12*pi/180) + V12) ‐ (100/tan(A23*pi/180) + V23) ≤0 

g16 = (100/tan(A23*pi/180) + V23) ‐ (100/tan(A34*pi/180) + V34) ≤0 

g17 = (100/tan(A34*pi/180) + V34) ‐ (100/tan(A45*pi/180) + V45) ≤0 

60  

g18 = (100/tan(A21*pi/180) + V21) ‐ (100/tan(A32*pi/180) + V32) ≤0 

g19 = (100/tan(A32*pi/180) + V32) ‐ (100/tan(A43*pi/180) + V43) ≤0 

g20 = (100/tan(A43*pi/180) + V43) ‐ (100/tan(A54*pi/180) + V54) ≤0 

g21 = GR2 ‐ GR1 ≤0 

g22 = GR3 ‐ GR2 ≤0 

g23 = GR4 ‐ GR3 ≤0 

g24 = GR5 ‐ GR4 ≤0 

Constraints  specified  in constraint  file  (MATLAB code) are only  specified  in  the 

summary model. Bounds have not been  included as they were defined as  input 

in iSight, optimization software. 

 

Model analysis 

1. Scaling 

In optimization algorithms, proper scaling  is critical when actual design models 

are used.  For design of automatic  transmission problem, design quantities are 

expressed in units natural for the problem, e.g. velocity of vehicle are expressed 

in miles per hr (mph) with maximum values of order 102, angles of shift  lines  in 

radians with typical values of order 10‐1 rad, while gear ratios are unitless with 

magnitude of order 10. Large differences in order of magnitude of variables and 

functions  (Figure  17)  result  in  ill  conditioned  Hessian  and  Jacobian  matrices 

making algorithmic calculations unstable and inefficient.  

For  a  well‐scaled  problem,  all  variables  and  functions  should  have  similar 

magnitudes  in  values  in  the  feasible  domain  and  the  order  of magnitude  of 

variables in the range [‐1,1].  AT model variables were normalized [‐1,1].  

61  

 

Figure 17: Scaling 

 

2. Monotonicity analysis 

The model is well bounded, since all the variables have lower and upper bounds. 

Most of  the constraints are  linear making  the optimization  less expensive. The 

objective function is not an explicit function of variables and is obtained by non 

linear simulation;  therefore any analytical analysis  is not possible. But  to aid  in 

monotonicity analysis, the values of one design variable  is varied  in the feasible 

domain, keeping the values of the rest of the variables constant and the change 

in the objective is observed. 

 

-6 -4 -2 0 2 4 6-3

-2

-1

0

1

2

3

x

y

ill-scaled problemwell scaled problem (normalized)

62  

 

Figure 18: Fuel Economy (Objective) vs Gear Ratio Monotonicity Analysis 

 

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 123.1

23.2

23.3

Obj

ectiv

e

Normalized Parameter GR1

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 115

20

25

Obj

ectiv

e

Normalized Parameter GR2

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 120

22

24

Obj

ectiv

e

Normalized Parameter GR3

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 122.5

23

23.5

Obj

ectiv

e

Normalized Parameter GR4

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 123

23.2

23.4

Obj

ectiv

e

Normalized Parameter GR5

63  

 

Figure 19: Fuel Economy (Objective) vs Upshift Variables Monotonicity Analysis 

-1 -0.5 0 0.5 123.1

23.2

23.3

Obj

ectiv

e

Normalized Parameter V12-1 -0.5 0 0.5 1

15

20

25

Obj

ectiv

e

Normalized Parameter V23

-1 -0.5 0 0.5 120

22

24

Obj

ectiv

e

Normalized Parameter V34-1 -0.5 0 0.5 1

23.1

23.2

23.3

Obj

ectiv

e

Normalized Parameter V45

-1 -0.5 0 0.5 123.1

23.2

23.3

Obj

ectiv

e

Normalized Parameter A12-1 -0.5 0 0.5 1

15

20

25

Obj

ectiv

e

Normalized Parameter A23

-1 -0.5 0 0.5 120

22

24

Obj

ectiv

e

Normalized Parameter A34-1 -0.5 0 0.5 1

23.3

23.4

Obj

ectiv

e

Normalized Parameter A45

64  

 

Figure 20: Fuel Economy (Objective) vs Downshift Variables Monotonicity Analysis 

Table 9: Monotonicity Analysis with Gear Ratios 

  GR1  GR2 GR3 GR4 GR5

f  +  ~  ~  ‐  ‐ 

g21  ‐  +       

g22    ‐  +     

g23      ‐  +   

g24        ‐  + 

-1 -0.5 0 0.5 122.5

23

23.5

Obj

ectiv

e

Normalized Parameter V21-1 -0.5 0 0.5 1

23

23.2

23.4

Obj

ectiv

e

Normalized Parameter V32

-1 -0.5 0 0.5 122

23

24

Obj

ectiv

e

Normalized Parameter V43-1 -0.5 0 0.5 1

23.3

23.4

Obj

ectiv

e

Normalized Parameter V54

-1 -0.5 0 0.5 120

22

24

Obj

ectiv

e

Normalized Parameter A21-1 -0.5 0 0.5 1

23

23.2

23.4

Obj

ectiv

e

Normalized Parameter A32

-1 -0.5 0 0.5 122

23

24

Obj

ectiv

e

Normalized Parameter A43-1 -0.5 0 0.5 1

23.3

23.4

Obj

ectiv

e

Normalized Parameter A54

65  

Table 10: Monotonicity Analysis with Upshift Variables 

  V12  V23  V34 V45 A12 A23 A34  A45

f  ~  +  +  ~  +  ‐  ‐  + 

g1  +  ‐             

g2    +  ‐           

g3      +  ‐         

g4  ‐               

g5  ‐               

g6    ‐             

g7    ‐             

g8      ‐           

g9        ‐         

g13      +           

g14      +           

g15  +  ‐      ‐  +     

g16    +  ‐      ‐  +   

g17      +  ‐      ‐  + 

 

66  

Table 11 : Monotonicity Analysis with Downshift Variables 

  V21  V32  V43 V54 A21 A32 A43  A54

f  ‐  ~  ‐  +  ~  ~  +  + 

g4  +               

g5  +               

g6    +             

g7    +             

g8      +           

g9        +         

g10  +  ‐             

g11    +  ‐           

g12      +  ‐         

g18  +  ‐      ‐  +     

g19    +  ‐      ‐  +   

g20      +  ‐      ‐  + 

 

where 

Increasing monotinicity : + 

Decreasing monotonicity : ‐ 

Nonmonotonic : ~ 

67  

It can be seen  from monotonicity analysis that the problem  is well‐constrained 

by Monotonicity  Principle  1  (MP1).    Every  increasing  (decreasing)  variable  in 

objective function is bounded below (above) by atleast one active constraint. 

3. Optimization Algorithm 

Optimization technique adopted for solving AT problem was a two‐step process 

as  the design  search  space was  large. ASA was used  for  stage 1 as ASA  is well 

suited  for exploration of  large space and  the approximate minima was used as 

initial guess for stage 2, Non‐Linear Sequential Quadratic Programming (NLSQP) 

which converged to local minima. 

Adaptive  Simulated  Annealing  (ASA):  Simulated  annealing  (SA)  is  a  generic 

probabilistic  meta‐algorithm  for  the  global  optimization  problem,  namely 

locating a good approximation  to  the global optimum of a given  function  in a 

large search space. The name and inspiration come from annealing in metallurgy.  

In  the  simulated  annealing  (SA) method,  each  point  s  of  the  search  space  is 

analogous  to  a  state  of  some  physical  system,  and  the  function  E(s)  to  be 

minimized  is analogous  to  the  internal energy of  the  system  in  that  state. The 

goal  is  to bring  the  system,  from  an  arbitrary  initial  state,  to  a  state with  the 

minimum  possible  energy.  At  each  step,  the  SA  heuristic  considers  some 

neighbor s' of the current state s, and probabilistically decides between moving 

the system to state s' or staying put  in state s. The probabilities are chosen so 

that the system ultimately tends to move to states of lower energy. Typically this 

step  is  repeated until  the  system  reaches  a  state  that  is  good enough  for  the 

application 

Adaptive  simulated  annealing  (ASA)  is  a  variant  of  simulated  annealing  (SA) 

algorithm in which the algorithm parameters that control temperature schedule 

and  random  step  selection  are  automatically  adjusted  according  to  algorithm 

progress. The algorithm works by representing the parameters of the function to 

68  

be  optimized  as  continuous  numbers,  and  as  dimensions  of  a  hypercube  (N 

dimensional space).  

Non‐Linear  Sequential  Quadratic  Programming  (NLSQP)  :  The  sequential 

quadratic programming (sequential QP) algorithm is a generalization of Newton's 

method  for  unconstrained  optimization  in  that  it  finds  a  step  away  from  the 

current point by minimizing a quadratic model of the problem. 

4. iSight 

iSight  [28]  is  a  commercial  package  for  optimization  available  from  Engineous 

software.  iSight was  integrated with MATLAB/SIMULINK for optimization  in this 

project. All results shown were obtained using iSight. 

5. MATLAB (fmincon) 

The above problem was also solved using fmincon function available  in MATLAB 

optimization  toolbox  [29].  It  required  larger  #  of  iterations  but  converged  to 

similar solution.  

 

69  

 

Figure 21: Optimization Flowchart 

 

 

 

Design Concept

Build MATLAB/SIMULINK Model

Adjust Input File(s)Un-Normalize

Run Model

Normalize Resuls

Review Output File(s)

Final Design

MeetRequirements

iSight

70  

Results 

Total runs = 299 

Feasible Runs = 201 

Stage 1, ASA runs = 106 

Stage 2, NLSQP runs = 193 

 

  Lower Bound  Initial Guess Upper Bound Stage 1 

results (ASA) 

Stage 2 

results 

(NLSQP) 

GR1  4  4.68 5 4.75 4.86

GR2  2.6  2.94 3.5 3.22 2.93

GR3  1.5  1.92 2.4 1.64 1.71

GR4  1  1.3 1.6 1.13 1.12

GR5  0.8  1 1.2 0.86 0.88

V12  0  3.44 10 7.75 6.1

V23  0  5.73 30 21.84 25.65

V34  0  17.21 40 33.68 33.61

V45  0  41.31 50 41.82 42.68

V21  0  1 10 1.57 0.83

V32  0  2.73 30 16.44 9.18

71  

V43  0  11 40 28.68 10.34

V54  0  30.98 50 36.82 11.94

A12  60  72.48 85 75.48 75.48

A23  50  62.85 80 59.3 59.3

A34  50  65.34 80 60.75 60.45

A45  45  61.65 75 63.58 63.43

A21  60  78.32 87 76.78 76.89

A32  55  71.83 85 78.21 73.96

A43  50  64.91 80 69.2 69.2

A54  45  60.15 75 63.85 63.85

f    20.01 22.1185  22.893

 

 

72  

 

Figure 22: Objective vs RunCounter (Improvements only) 

 

Figure 23: Optimized Shift Map 

-25

-20

-15

-10

-5

00 50 100 150 200 250

RunCounter

fmpg

0 10 20 30 40 50 60 70 80 90 1000

10

20

30

40

50

60

70

80

90

100Shift Map

Vehicle Speed (mph)

Thro

ttle

(0 -1

00)

1->22->33->44->52->13->24->35->4

73  

Figure  23  is  the  optimized  shift  map  obtained.  Optimization  resulted  in  14.5% 

improvement  in fuel economy over  initial guess. A better result will be obtained  if the 

shift map was optimized for complete FUDS cycle. 

 

Table 12: Constraint activity 

Constraint  Initial Value Final value Activity 

g1  ‐0.29  ‐17.54 Inactive 

g2  ‐9.48  ‐5.95 Inactive 

g3  ‐22.1  ‐7.07 Inactive 

g4  ‐0.44  ‐3.27 Inactive 

g5  ‐1.924  ‐4.35 Inactive 

g6  0  ‐13.46 Inactive 

g7  ‐2.14  ‐12.61 Inactive 

g8  ‐2.21  ‐0.95 Inactive 

g9  ‐6.33  ‐0.622 Inactive 

g10  ‐0.73  ‐7.349 Inactive 

g11  ‐7.27  ‐18.466 Inactive 

g12  ‐18.98  ‐8.407 Inactive 

g13  ‐1.79  ‐3.04 Inactive 

g14  ‐2.33  ‐3.377 Inactive 

74  

g15  ‐22.00  ‐53.03 Inactive 

g16  ‐6.1076  ‐5.27 Inactive 

g17  ‐32.146  ‐2.38 Inactive 

g18  ‐13.877  ‐13.82 Inactive 

g19  ‐22.271  ‐28.711 Inactive 

g20  ‐30.54  ‐20.508 Inactive 

g21  ‐1.74  ‐1.929 Inactive 

g22  ‐1.02  ‐0.579 Inactive 

g23  ‐0.62  ‐0.579 Inactive 

g24  ‐0.3  ‐0.248 Inactive 

 

It can be seen from the above table that no constraint is active and hence the solution is 

an interior optimum. 

 

 

 

 

 

 

 

75  

Structural Analysis of transmission shafts (Girish Chandra)

Problem Statement: 

Engine  transmission  and  Power  train  involve  transmission  of  torque  across  various 

components  such as  Layshaft, Transmission output  shaft, Motor output  shaft and  the 

Propeller  shaft.  The  structural  integrity  of  the  connecting  shafts  is  of  paramount 

importance to ensure safe and reliable vehicle performance. 

The connecting shafts experience varying stress states during the performance life cycle 

depending  on  the  transmitting  torque  variation  and  structural  vibration  effects.  

Understanding  the  stress  distribution  caused  due  to  these  loading  conditions  is 

necessary to deduce and optimize the structural parameters  like shaft  inner and outer 

diameter. 

The objective of  this subproject  is  to perform necessary analytical modeling and carry 

out    simulations,  so as  to optimize  the  shaft  structural parameters depending on  the 

input torque rating.  First an analytical model of the stress distribution will be developed 

based on beam theory and vibration analysis. The shafts models are analyzed in the FEA 

program ANSYS  for  finding  their  first  few modal  frequencies  to  check  for  criticalities. 

Various  simulations  are  carried  out  for  different  loading  conditions  and  shaft 

geometries. Finally the integration of this structural analysis component into the project 

optimization framework will be discussed. The shafts are designed for steady torque and 

fully  reversed  conditions.  because  of  the  absence  of  an  alternating  component  of 

torsional stress, this condition is considered to be a simple multiaxial fatigue case. 

 

There is a trade‐off between the performance and the weight (dimensions) of the shaft 

system. Although a  thin hollow cylinder  results  in  reduction  in  the weight of  the  sub‐

system,  a  solid  cylinder  with  huge  diameter,  if  considered,  could  result  in  infinite 

product life time. Our aim is to find an optimum value which could reduce the weight of 

the system keeping in performance criteria.  

76  

The bending stresses are calculated using the formula : 

( )( )44

64

2/

dD

DMI

My iib

−±=±=π

σ

 

The Von‐Mises stresses can thus be found using the following formula 

23 ii τσσ += 

Nomenclature :  

In  the  present  work  an  attempt  is  made  to  minimize  the  weights  of  different 

propulsion  shafts  of  a  Hybrid  Electric  Vehicle.  In  this  subsystem,  4  shafts  are 

considered. The shafts are modeled axially. 

#  Symbol  Description  Unit 

1  D1  Outer Diameter of shaft 1  mm 

2  D2  Outer Diameter of shaft 2  mm 

3  D3  Outer Diameter of shaft 3  mm 

4  D4  Outer Diameter of shaft 4  mm 

5  d1  Inner Diameter of shaft 1  mm 

6  d2  Inner Diameter of shaft 2  mm 

7  d3  Inner Diameter of shaft 3  mm 

8  d4  Inner Diameter of shaft 4  mm 

9  A1  Cross‐sectional area of shaft 1  mm2 

77  

10  A2  Cross‐sectional area of shaft 2  mm2 

11  A3  Cross‐sectional area of shaft 3  mm2 

12  A4  Cross‐sectional area of shaft 4  mm2 

13  σ y  Maximum tensile strength  N/ mm2 

14  Ti  Maximum shear stress in shaft i  N/ mm2 

15  S  Maximum Von‐mises stress  N/ mm2 

16  E  Young’s modulus  N/ mm2 

17  G  Shear modulus  N/ mm2 

18  Nf  Factor of safety  ‐  

19  σ y  yield stress  N/ mm2 

20  Sf  Corrected fatigue strength  N/ mm2 

21  Se  Corrected endurance limit  N/ mm2 

22  Sf’  Fatigue strength  N/ mm2 

23  Se’  Endurance limit  N/ mm2 

24  Cload  Load factor  ‐ 

26  Csize  Size factor  ‐ 

27  Csurf  Surface factor  ‐ 

28  Ctemp  Temperature factor  ‐ 

29  Creliab  Reliability factor  ‐ 

30  Kf  Fatigue stress concentration factor (bending)  ‐ 

78  

31  Kfs  Fatigue stress concentration factor (torsion)  ‐ 

32  Kfsm  Mean Torsional Fatigue stress concentration factor  ‐ 

33  Ma  Alternating moment  N‐m 

34  Mm  Mean moment  N‐m 

35  Ta  Alternating Torque  N‐m 

36  Tm  Mean Torque  N‐m 

37  σ a  Alternating bending stress  N/ mm2 

38  σ m  Mean bending stress  N/ mm2 

39  J  Mass polar moment of Inertia  Kg‐m2 

40  Sut  Ultimate Strength  N/ mm2 

 

Mathematical Model: 

Objective 

The objective of  this optimization process  is  to minimize  consumption of  fuel by  the 

vehicle  by minimizing  the  mass  of  various  shafts  involved  in  the  power  train.  It  is 

assumed that the shaft rotates at a constant speed about  its  longitudinal axis,  it has a 

uniform, circular cross section and is perfectly balanced, i.e., at every cross section, the 

mass center coincides with the geometric center. 

min w =  2 2( ( - ) )4 iDi di lπ ρ∑  

whereDi , di represent the outer and inner diameter of shaft ‘i’ (i = 1, 2, 3, 4) 

and  il being the corresponding lengths and  ρ the density of the material of the shaft. 

79  

The Transmission output shaft is a splined shaft used to carry the different transmission 

gears and transfer the torque as per the selection of the gear by the driver. The stress 

concentration  factor  is  selected as per  the original  shape of  the  shaft but  the varying 

diameter of the splines is averaged out as the outer diameter. 

An ASME  Standard  for  the Design  of  Transmission  shafting  is  published  as  B106.1M‐

1985. This standard presents a simplified approach  to  the design of shafts. The ASME 

approach  assumes  that  the  loading  is  fully  reversed  bending  (zero  mean  bending 

component)  and  steady  torque  (zero  alternating  torque  component)  at  a  level  that 

creates stresses below the torsional yield strength of the material. 

Design variables 

The objective of minimizing  the weight of  the  4‐shaft  system  is  achieved  considering 

varying  outer  and  inner  diameters  of  the  shafts.  Their  lengths  are  assumed  to  be 

constant  and  the  material  properties  pre‐selected.  The  variables  of  the  present 

subsystem are : 

Inner diameter of the shafts : d1, d2, d3, d4 

Outer diameter of the shafts : D1, D2, D3, D4 

Parameters 

The main parameters of this subsystem are the  lengths of the  individual shafts (l1,  l2,  l3, 

l4). The 4 shafts are assumed to be made of the same material (cold‐rolled, low‐carbon 

steel – SAE 1020). Most of the information on the fatigue strength of a material at some 

finite life, or its endurance limit at infinite life, comes from testing of actual or prototype 

assemblies of the design. An estimation of the endurance limit and the fatigue strength 

of the material is made based on data available from various monotonic tests. From the 

various tests, an approximate relationship between Sut and Se’ can be assumed. 

Se’ = 0.5* Sut      (Sut = 65 Kpsi, Sy = 38 Kpsi) 

80  

The endurance  limit obtained  from standard  fatigue‐test specimens or  from estimates 

based on static tests must be modified to account for the physical differences between 

the  test specimen and  the actual part being designed. These  factors are accounted as 

the  strength  reduction  factors  ehich  are  multiplied  directly  to  the  theoretically 

estimated values. Thus the endurance limit can be written in the form 

Se =  Cload* Csize* Csurf* Ctemp* Creliab* Se’ = 0.84* Se’ 

where  Cload,  Csize,  Csurf,  Ctemp,  Creliab  are  the  various  strength  reduction  factors  as 

mentioned above. 

The  stress  concentration  factors  are  very  important while  considering  the  design  of 

shafts. These factors give an  indication of degree of stress concentration at a notch. In 

the present subsystem, the Transmission output shaft, which is actually a splined shaft, 

is  assumed  to  be  perfectly  cylindrical.  The  notch  sensitivity  factor  thus  plays  an 

important role  in our design and cannot be  ignored. For dynamic  loading, we need  to 

modify the theoretical stress‐concentration factor based on the notch sensitivity of the 

material to obtain the  fatigue stress‐concentration  factor, Kf  , which can be applied to 

the nominal dynamic  stresses. Neuber, Kuhn  and Peterson developed  the  concept of 

notch‐sensitivity q. the equation for Kf is written as follows 

Kf = 1 + q*(Kt ‐ 1)      (for Bending) 

Kfs = 1 + q*(Kts ‐ 1)      (for Torsion) 

For most of  the design cases,  the mean  torsional  stress  component  is assumed  to be 

equal to the torsional fatigue stress concentration factor i.e. 

Kfsm = Kfs 

 

 

 

 

Const

The D

The s

equa

The v

1

Figure

traints: 

Dynamic fati

shafts are co

tion for failu

32 fNπ

value of the 

1. Shaft Des

The 4 sha

the prese

Shaft 1 – 

Shaft 2 – 

Shaft 3 – 

Shaft 4 – 

e 24: A holistic

igue failure c

onsidered un

ure for a hol

2[ ]f af

f

MKS

⎧⎪⎨⎪⎩

factor of saf

sign : 

afts are desi

ent subsystem

Input transm

Output tran

Motor outp

Propeller sh

c view of the HE

constraints a

nder a steady

low shaft ca

2 0.75[ fsmK+

fety is taken 

igned  for th

m we repres

mission shaft

smission sha

ut shaft 

haft 

EV power train

are derived 

y torsion an

n be written

1/ 2

2]m

y

T DS

⎫⎪ ≤⎬⎪⎭

to be 2.5     

he maximum

sent the vari

t (Layshaft)

aft  

n showing shaf

from the So

d a reversed

n as: 

4 4i i

i

D dD−   ‐‐  

    

m torque and

ious shafts a

fts 3 and 4 

oderberg’s fa

d bending lo

 {g1, g3, g5

d moment c

as follows: 

8

ailure criteria

ads. Thus th

5, g7} 

conditions.  I

81 

a. 

he 

In 

 

82  

 

Figure 25: Transmission Gear box containing shafts 1 and 2 

For  design  purposes,  the  mass  of  the  different  gears  are  assumed  to  be 

independent of  the outer/inner diameter of  the  shafts. Each  shaft  can  thus be 

represented  by  a  hollow  rotating  beam with  constant  loads  acting  at  different 

locations. The locations of the gears are assumed to be fixed. The shafts transmit 

their weight  through  the end bearings which  in  reality have  a  certain damping 

factor.  In  the  present  subsystem we  assume  the  bearings  to  be  free  from  any 

damping effects.  

The  shafts  have  been  modeled  using  the  mathematical  solver  MATLAB.  The 

values  of  the  various  components  are  substituted  in  the  Soderberg’s  fatigue 

failure criteria, which results in the following equation :  

30.57*((5.3127*10^(-9)*M1)^2 + 0.75*(3.81*10^(-9)*T1)^2)^0.5 <= (Di^4-di^4)/Di

We can deduce from the above formula that the constraints g1, g3,g5, g7 are only 

dependent on the moments and the torques acting on the shafts (apart from the 

inner and outer diameters). Analytical expressions  from the Timoshenko’s beam 

83  

theory  and  the  expressions  for  loading  function  using  singularity  function  are 

used to calculate the moments acting on the shafts.  

The  set  constraints  in  the  present model  are  derived  from  the  fact  that  the 

difference in the inner and the outer diameter of the shafts is always negative. To 

avoid  any  singularities  in  the  calculations  using MATLAB,  we  take  a  factor  of 

0.001m  into consideration. Thus the constraints g2, g4, g6, g8 can be written as 

follows 

(di+0.001‐Di) ≤ 0 

Upper and lower bounds on the both the diameters are placed so as to comply 

with  the  space  and  various  other  constraints.  Based  on past  experience, we 

limit the maximum outer diameter to 35 cm.  

Di – 0.35 ≤ 0 

 

2. Frequency constraints :  

84  

 

Figure 26: Campbell Diagram 

 

A Campbell diagram  is a mathematically constructed diagram which  is used  to 

check  for  coincidence of  vibration  sources with natural  resonances. When  the 

critical speed equals the natural frequency of the shafts, resonance occurs. This 

resonance  in  the  structures  causes  to  reduce  their product  life  time. Avoiding 

this is one of the most important issues while designing the shaft structures. The 

general operating engine speed of a HEV  is from 2000 rpm to 5000 rpm.  In our 

case, we assume  this  value  to be  same  for  the  case of  Shaft2. Except  for  this 

shaft, all other shafts are found to be well outside this critical range.  

The  Lay‐shaft  is  modeled  in  the  Finite  Element  Analysis  package  ANSYS  for 

obtaining  its      first  few modes of vibration under  the given  loading conditions. 

The  bearings  are  assumed  to  have  no  damping  and  are  considered  to  be 

completely rigid. The first four modes of vibrations are plotted  in the Campbell 

0

200

400

600

800

1000

1200

1400

1600

1000 2000 3000 4000 5000 6000

Mode 1

Mode 2

Mode 3

Mode 4

Operating 

Critical Speed 

85  

diagram to check for the criticalities. It is found that the 2nd and 3rd modes are 

falling in the critical region. It is therefore necessary to “shift” the frequencies of 

vibration  out  of  this  region.  In  our model,  we  constraint  the  frequencies  to 

certain  range  so  that  they  fall  outside  this  critical  bandwidth.  The  applied 

constraints based on the criticality constraints are  

f2‐405≤0 

380‐f2≤0 

f3‐970≤0 

945‐f3≤0 

The mode shapes obtained using ANSYS are shown below. 

Mode 1 

 

Mode 2 

 

 

 

 

86  

Mode 3

Mode 4

 

Summary Model:

min w =  2 2( ( - ) )4 iDi di lπ ρ∑

Such that,

g1: 1/ 2

4 42 21 1 1 1

1

32[ ] 0.75[ ]f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫ −⎪ ⎪+ ≤⎨ ⎬⎪ ⎪⎩ ⎭

 

g2: (d1-D1+0.01) ≤ 0

g3: 1/ 2

4 42 22 2 2 2

2

32[ ] 0.75[ ]f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫ −⎪ ⎪+ ≤⎨ ⎬⎪ ⎪⎩ ⎭

g4: (d2-D2+0.01) ≤ 0

87  

g5: 1/ 2

4 42 23 3 3 3

3

32[ ] 0.75[ ]f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫ −⎪ ⎪+ ≤⎨ ⎬⎪ ⎪⎩ ⎭

g6: (d3-D3+0.01) ≤ 0

g7: 1/ 2

4 42 24 4 4 4

4

32[ ] 0.75[ ]f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫ −⎪ ⎪+ ≤⎨ ⎬⎪ ⎪⎩ ⎭

g8: (d4-D4+0.01) ≤ 0 

g9: D1 ‐ 35 ≤ 0 

g10: D2 – 35 ≤ 0 

g11: D3 ‐ 35 ≤  0 

g12: D4 ‐ 35 ≤  0 

g13:  f2‐405≤0 

g14: 380‐f2≤  0 

g15: f3‐970≤  0 

g16: 945‐f3≤  0 

 

 Model validation: 

 The model was validated by comparing the results of the values obtained using the 

formulae  derived  and  used  in  the MATLAB  subroutine with  those  obtained  using 

Finite  Element  Analysis  software.  For  a  given  di  (=  .85m)  and  Di  (=  0.12 m),  the 

values of  the moments calculated using  the MATLAB  file were  in  congruence with 

the ones obtained using FEA software ‐ ANSYS. The initial “guess” values of di=0.09 

&   Di =0.1 (I = 1 to 4) also were checked for feasibility before the beginning of the 

optimization. 

88  

Model analysis 

1. Assumptions: 

In  the  present  subsystem,  the weight  of  the  transmission  gears  and  the  gear 

ratios  are  taken  independent  of  the  shaft  diameters  i.e.  they  are  assumed 

constant  here.  The  shafts  are  assumed  to  be  of  constant  lengths,  small 

overhangs (if any) have been ignored. To make the problem less non‐linear, the 

power  loss due  to  friction and other  factors  is  ignored. The bearings on which 

the shafts are rotating are assumed to be completely stiff, the damping effects 

are thus ignored.  

2. Monotonicity analysis: 

  Di (i=1 to 4)  di (i=1 to 4)  f2  f3 

Weight  (+)  (‐)     

Failure constraints (g1 to g4)  (‐)  (+)     

Diameter Set constraints (g5 to g8)  (‐)  (+)  u  u 

Min. di constraint    (‐)  u  u 

Max. di constraint    (+)  u  u 

Min. Di constraint  (‐)    u  u 

Max. Di constraint  (+)    u  u 

Min. 2nd mode freq. (f2)  u  u  (‐)   

Max. 2nd mode freq.  u  u  (+)   

Min.3rd mode freq. (f3)  u  u    (‐) 

Max.3rd mode freq.   u  u    (+) 

89  

Table 13: Monotonicity analysis on the different variables wrt the constraints and the objective function 

 

The  outer  diameters  are  increasing  variables  with  respect  to  the  objective 

function.  They  are  bounded  below  by more  than  one  constraint  i.e. we  have 

more  than  one  active  variable  with  respect  (wrt)  to  the  outer  diameter(s). 

Similarly,  the  inner  diameters  of  the  shafts  are  decreasing  wrt  the  weight 

function and are bounded above by several constraints. The 2nd and 3rd modal 

frequencies do not appear in the objective function. Both these frequencies are 

bounded both from above and below, thus as per the Monotonicity Principle II, 

the problem is well constrained.  

The modal frequencies were determined using the Finite Element Analysis code 

ANSYS. Their  relation with  the objective  function and other constraints cannot 

be exactly determined. Thus  their monotonicities are undetermined wrt  to  the 

objective function and the Failure or Diametrical constraints. 

The effect of variation of the weight of the shafts with respect to the variation in 

the  inner  and  the  outer  diameter  under  the  different  failure  and  frequency 

constraints  is analyzed. All the other variables except for the ones specified are 

kept  constant  for  this  purpose.  A  contour  plot was  generated  using  the  least 

square regression model and is shown in Figure ‘b’ 

 

If a s

value

value

Opti

The 

softw

progr

Optim

good

A ma

iterat

value

F

ingle shaft w

e of the oute

es. 

imization

optimization

ware  iSight. 

ramming  in 

mus with oth

 user interfa

aximum  sea

tions of 100 

es  for  the o

Figure 27:Effec

was conside

er diameter 

n: 

n  of  the  4‐

But  later  t

Optimus.  T

her software

ace was foun

arch  length 

were consid

uter and  inn

ct of variation o

ered, the red

and increas

shaft  system

the  modelin

This  was  be

es like ANSY

nd in the latt

of  50,  a  to

dered for ca

ner diamete

 of d1 and D1 o

duction  in w

sing the inne

m  was  first 

ng  was  carr

ecause  of  th

S. Also, bett

ter software

olerance  of 

rrying out th

er of all  the

 on the objectiv

weight  is obt

er diameter 

carried  on

ied  out  usin

he  better  in

ter post proc

e.  

0.001  and 

he optimizat

 4  shafts ar

Decreasi

ve function. 

tained by de

from the in

  using  the 

ng  Sequent

nterfacing  ca

cessing capa

a maximum

tion using SQ

re  considere

ing 

9

 

ecreasing th

itial specifie

optimizatio

ial  Quadrat

apabilities  o

abilities and 

m  number  o

QP. The initia

ed  same. Th

90 

he 

ed 

on 

ic 

of 

of 

al 

he 

91  

material of  the  shafts  is  also  same  i.e.  cold‐rolled,  low‐carbon  steel –  SAE 1020.  This 

material is cheap but does not possess very high strength. We thus take a high factor of 

safety  of  2.5.  The material  properties  (parameters)  have  already  been mentioned  in 

detail in the previous section. A “.txt” (2nd_shaft.txt) file involving the ANSYS macro was 

created. On  the execution of  this  file using a batch  file, an output  file  containing  the 

results was obtained (s2_results.txt). These files were linked to the corresponding blocks 

inside  the optimization  software Optimus.  This work‐flow  thus helps  in obtaining  the 

modal  frequencies  f2 and  f3. These  frequency values along with  the  initial diametrical 

values  are  fed  into  the  “.m”  file  (Opt_HEV.m) which  contains  the  analytical  formulae 

(steady  torsional  and  reversed  bending  load),  the  objective  and  the  constraints. 

Execution of  this  file gives  rise  to  the output “.txt”  file  (Opt_out.txt). On arranging all 

these files as shown in the flow chart below, and on running the iteration process using 

SQP, we obtain the optimal solution for the problem. 

Figure 28:: Work­flow created in Optimus 

The results of the optimization are shown below. As we can see constraints g1, g5 and 

g8 are only active. None of  the 4  frequency constraints are active. We observe  that a 

decrease  in  the  feasible  frequency  domain  results  in  an  almost  same  value  of  the 

optimum but an increase in the bounds resulted in the incomplete optimization process 

 

as  th

iterat

funct

diam

Futu

In  th

assum

damp

and t

e  line searc

tions. The in

tion.  Results

eters were t

ure Work 

he  present 

med  to be 

ped bearing

to check for

ch  limit was 

nitial value o

s  could  not 

taken to be c

subsystem,

completely 

g  system  fo

r their reson

being reach

f the diamet

be  obtaine

close to the 

Figure 29:

  the  bearin

stiff. A  futu

r  the calcul

nance.

hed and Opt

ters was var

ed when  the

maximum fe

: Results of Op

ngs  on  whi

ure work  ca

ation of  th

timus could 

ried to find it

e  initial  poi

easible value

timus 

ch  the  sha

an be  carrie

e modes of

not proces

ts effect on 

nt  of  start 

e of D.  

fts  were  ro

ed out by  c

f  frequency 

9

s any  furthe

the objectiv

of  the  oute

 

otating  wer

considering 

of  the  shaf

92 

er 

ve 

er 

re 

ft 

 

Sys

Each 

of ea

allow

highe

negat

migh

drive

perfo

Figur

optim

subsy

toget

mode

The e

differ

stem Inte

subsystem i

ach subsyste

w  extended 

er fuel econo

tively  affect

t result  in b

  shaft,  req

ormance. 

e  30  depic

mization  (AIO

ystem  objec

ther in iSight

els in SIMUL

engine mode

rent lifts and

egration

in HEV is hig

em  independ

electric  onl

omy but gre

t  the  fuel  e

better engin

quiring  hea

cts  the  syst

O),  single ob

ctive  was  t

t with a simi

LINK were ta

el was simp

d with varyin

n

Figure 30: S

ghly depende

dently will n

ly  mode  of 

eater mass o

conomy.  Sim

e operating

avier  drive 

em  level  in

bjective of m

reated  as  c

ilar approac

ken from th

lified to hav

ng durations

ubsystem Inte

ent on other

ot result  in 

operation 

of battery wi

milarly  choo

 conditions 

shafts  affe

nteraction  o

maximizing  f

constraint. 

h used for A

e AT subsyst

ve a constan

s. The modif

eraction 

r subsystems

optimal des

with  engine

ill increase v

osing  a  part

but may re

ecting  fuel 

of  each  sub

fuel econom

The  whole 

AT subsystem

tem design.

nt phase. The

fied engine 

s and hence

sign. A large

e  shutdown

vehicle weig

ticular  set  o

sult  in  large

economy 

bsystem.  Fo

my was chos

system  wa

m. The vehic

e model wa

map, thus o

9

 optimizatio

er battery wi

n  resulting  i

ht and henc

of  gear  ratio

er  torques o

and  vehicl

or  all  in  on

sen and eac

as  integrate

cle simulatio

s then run a

obtained, wa

93 

 

on 

ill 

in 

ce 

os 

on 

le 

ne 

ch 

ed 

on 

at 

as 

94  

used  in  the engine model. Due  to  the  limited operational range of  the HCCI engine,  it 

was coupled with the base SI engine model and a transition  from HCCI to SI and vice‐

versa is made when the operating point crosses the HCCI‐SI map boundary. The system 

assumes  a  very  smooth  and  fast  transition  between  the HCCI  and  SI modes  and  the 

dynamics of the transition were neglected in the present case. The HCCI engine shows a 

much  better  improvement  over  the  base  SI  engine  in  its  operational  range  which 

improves the fuel economy of the vehicle. 

The structural dynamic subsystem is linked to the other subsystems through the torque 

being transmitted across the power train. During the design of the 4‐shaft subsystem, a 

constant  torque was assumed. Depending upon gear ratios, size of motor and engine, 

the maximum torque on shaft changes. Thus, during the integration of the subsystems, 

the initially considered structural subsystem parameter (torque) was now a variable.  

The optimization of  the  subsystems  involved different objectives. The engine and  the 

transmission  subsystem had maximizing  the  fuel economy  as  their objective whereas 

the other  two  subsystems had minimization of  the mass as  the objective. The  system 

optimization with  AIO was  carried  out with maximization  of  fuel  economy.  Thus  the 

objectives  of  the  battery  and  the  driveshaft  subsystems  were  incorporated  as 

intermediate variables affecting the fuel economy through the weight of the vehicle. 

 

Summary Model f = Min (–MPG) 

subject to  

g1:            2 + V12 ‐ V23 ≤0 

g2:            2 + V23 ‐ V34 ≤0 

g3:            2 + V34 ‐ V45 ≤0 

g4:            V21 + 2 ‐ V12 ≤0 

g5:            V21 ‐ 0.85*V12 ≤0 

95  

g6:            V32 + 3 ‐ V23 ≤0 

g7:            V32 ‐ 0.85*V23 ≤0 

g8:            V43 + 4 ‐ V34 ≤0 

g9:            V54 + 4 ‐ V45 ≤0 

g10: V21 + 1 ‐ V32 ≤0 

g11: V32 + 1 ‐ V43 ≤0 

g12: V43 + 1 ‐ V54 ≤0 

g13: V34 ‐ 8 ‐ V43 ≤0 

g14: V45 ‐ 8 ‐ V54 ≤0 

g15: (100/tan(A12*pi/180) + V12) ‐ (100/tan(A23*pi/180) + V23) ≤0 

g16: (100/tan(A23*pi/180) + V23) ‐ (100/tan(A34*pi/180) + V34) ≤0 

g17: (100/tan(A34*pi/180) + V34) ‐ (100/tan(A45*pi/180) + V45) ≤0 

g18: (100/tan(A21*pi/180) + V21) ‐ (100/tan(A32*pi/180) + V32) ≤0 

g19: (100/tan(A32*pi/180) + V32) ‐ (100/tan(A43*pi/180) + V43) ≤0 

g20: (100/tan(A43*pi/180) + V43) ‐ (100/tan(A54*pi/180) + V54) ≤0 

g21: GR2 ‐ GR1 ≤0 

g22: GR3 ‐ GR2 ≤0 

g23: GR4 ‐ GR3 ≤0 

g24: GR5 ‐ GR4 ≤0 

g25: 315.8 0evP n− ≤  

g26: 315.8 0rbn P− − ≤  

g27: 315.8 0.5 0n a− + ≤  

g28: 598.2472 2.25016 0.00675047 30.2269 0evn P s− − + − ≤  

g29: 279.4718 0.355285 0.00413003 3.14753 0rn P s− − − − ≤  

96  

g30: 22.884 1.4031 0.0023136 76.2822 0rn P s− − − + ≤  

g31: 0.001299444 0.0000321704 1.90564 7 0.0000734718rn e P+ + − + 

g32: 5.56 7 0.0000321704 1.14338 7 0.0000734718 0e n e a s− + − − + ≤ 

g33: 0.0032 0.000185935 3.13197 7 0.000951056 0en e P s− + − − ≤  

g34: 1/ 22 2

4 41 1 1 1

1

320.75 0f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫⎡ ⎤ ⎡ ⎤ −⎪ ⎪+ − ≤⎢ ⎥ ⎢ ⎥⎨ ⎬⎢ ⎥ ⎢ ⎥⎪ ⎪⎣ ⎦ ⎣ ⎦⎩ ⎭

 

g35: (d1‐D1+0.01) ≤ 0

g36: 1/ 22 2

4 42 2 2 2

2

320.75 0f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫⎡ ⎤ ⎡ ⎤ −⎪ ⎪+ − ≤⎢ ⎥ ⎢ ⎥⎨ ⎬⎢ ⎥ ⎢ ⎥⎪ ⎪⎣ ⎦ ⎣ ⎦⎩ ⎭

 

g37: (d2‐D2+0.01) ≤ 0

g38: 1/ 22 2

4 43 3 3 3

3

320.75 0f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫⎡ ⎤ ⎡ ⎤ −⎪ ⎪+ − ≤⎢ ⎥ ⎢ ⎥⎨ ⎬⎢ ⎥ ⎢ ⎥⎪ ⎪⎣ ⎦ ⎣ ⎦⎩ ⎭

 

g39: (d3‐D3+0.01) ≤ 0

g40: 1/ 22 2

4 44 4 4 4

4

320.75 0f a m

f fsmf y

N M T D dK KS S Dπ

⎧ ⎫⎡ ⎤ ⎡ ⎤ −⎪ ⎪+ − ≤⎢ ⎥ ⎢ ⎥⎨ ⎬⎢ ⎥ ⎢ ⎥⎪ ⎪⎣ ⎦ ⎣ ⎦⎩ ⎭

 

g41: (d4‐D4+0.01) ≤ 0 

g42: D1 ‐ 35 ≤ 0 

g43: D2 – 35 ≤ 0 

g44: D3 ‐ 35 ≤  0 

g45: D4 ‐ 35 ≤  0 

g46: f2‐405≤0 

97  

g47: 380‐f2≤  0 

g48: f3‐970≤  0 

g49: 945‐f3≤  0 

g50: RI – 4 ≤ 0 

g51: SNOx – 1 ≤ 0 

g52: CoV ‐ 3 ≤ 0 

g53: 1 ‐ Lambda ≤ 0 

g54: IVC ‐620 ≤ 0 

g55: Tth ‐ T60 ≤ 0 

g56: Tin ‐100 ≤ 0 

g57: Phmin – Ph ≤ 0 

g58: Ph ‐ Phmax ≤ 0 

g59: VA ‐ 0.015 ≤ 0 

g60: 4 – L ≤ 0 

g61: L – 10 ≤ 0 

 

Results  

Two  different  solver,  namely,  Generalized  Reduced  Gradient  (GRG)  and  two  stage 

optimization (ASA followed by SQP), were applied for AIO and  

 

Table 14 gives the summary of final results. 

 

Table 14: AIO results 

  Lower  Initial Upper Two Stage Opt.  GRG 

98  

Bound  Guess BoundStage 1 (ASA) 

Stage 2 (NLSQP) 

GR1  4  4.86 5 4.86 4.9  4.86

GR2  2.6  2.93 3.5 2.93 2.6  3.13

GR3  1.5  1.71 2.4 1.7 1.5  1.69

GR4  1  1.12 1.6 1.13 1.266  1.12

GR5  0.8  0.88 1.2 0.88 1  0.88

V12  0  6.1 10 6.1 4.576  6.1

V23  0  25.65 30 25.65 30  27.68

V34  0  33.61 40 33.61 34.2  35.1

V45  0  42.68 50 42.68 43.96  42.68

V21  0  0.83 10 0.84 0.38  0.83

V32  0  9.18 30 9.18 10.11  9.19

V43  0  10.34 40 10.34 11.37  10.34

V54  0  11.94 50 11.94 13.2  11.94

A12  60  75.48 85 75.48 83.63  75.51

A23  50  59.3 80 59.3 57.27  59.3

A34  50  60.45 80 60.45 59.012  60.45

A45  45  63.43 75 63.44 62.42  63.43

A21  60  76.89 87 76.9 76.9  76.89

A32  55  73.96 85 73.96 73.74  73.96

A43  50  69.2 80 69.2 69.2  69.2

A54  45  63.85 75 63.86 63.85  63.85

99  

n  10  50 80 50 67.69  50.2

s  0.3  0.55 0.9 0.55 0.49  0.55

a  10000  20000 200000 20000 20000  20004

pe  14000  14000 40000 14000 20634  15868

pr  ‐10000  ‐6700 0 ‐6700 ‐9973  ‐6076

D1  0.08  0.11 0.35 0.11 0.95  0.097

D11  0.05  0.09 0.3 0.09 0.079  0.095

D2  0.08  0.11 0.35 0.11 0.151  0.101

D22  0.05  0.09 0.3 0.09 0.079  0.097

D3  0.08  0.11 0.35 0.11 0.132  0.093

D33  0.05  0.09 0.3 0.09 0.066  0.091

D4  0.08  0.11 0.35 0.11 0.20  0.097

D44  0.05  0.09 0.3 0.09 0.066  0.088

nocyl  4  6 8 6 4.11  5.52

f    22.893 22.9 28.77  24.47

 

Two stage optimization resulted in better fuel economy over GRG method even though 

both were started from similar initial guess. The better results from former method can 

be attributed to ASA algorithm better search capabilities over large global design space. 

Figure 31 shows the change in SOC with time for first 400 sec of FUDS cycle. SOC should 

not have  large  fluctuation  for healthy battery operation.  It  is evident  from  figure  that 

SOC does not change significantly over time and hence the obtained design is good.  

100  

 Figure 31: SOC evolution with time 

Conclusion The  use  of  surrogate models  for  the  engine  subsystem  reduced  effectively  the  time 

taken for the execution. The surrogate models thus are a good trade‐off between time 

and  fidelity. Whenever a high  fidelity  is not desired,  it  is surely advisable  to go with a 

surrogate model.  

The  variables  for  each  subsystem  (in  the  individual  as well  as  the  system  level)  are 

scaled  to make  the problem well  conditioned.  This expedites  the  convergence of  the 

model when typical gradient‐based algorithms were used. 

Various optimization algorithms have been used to carry out the optimization over the 

course of this project. Few of the algorithms used were 

• fmincon (MATLAB) 

• NLSQP (Non‐linear Sequential Quadratic Programming) 

• ASA (Adaptive Simulated Annealing) 

• GRG (Generalized Reduced Gradient) 

• Linprog (Linear Programming) 

 

0 50 100 150 200 250 300 350 400

0.58

0.585

0.59

0.595

0.6

0.605SOC evolution with time

Time (sec)

SO

C

101  

Extensive  parametric  study  was  conducted  as  a  part  of  the  optimization  study  to 

understand the sensitivity analysis of the parameters and constraint activity. 

Linearization of constraints was done for the battery model to reduce the complexity of 

the system. Also  the  linear nature of  the constraint allowed  the monotonicity analysis 

study easier. 

Reference 1. T. Moore, Tools and strategies for hybrid‐electric drivesystem optimization, SAE 

paper 961660, SAE, Warrendale, PA, 1996. 

2. U Zoelch and D Schroeder, Dynamic optimization method for design and rating 

of the components of a hybrid vehicle,  International  Journal of Vehicle Design 

19(1):1‐13 (1998). 

3. D Assanis, R Fellini, Z Filipi, Optimization Approach to Hybrid Electric Propulsion 

System Design, Mechanics of Structures and Machines, 27(4), 393‐421 (1999). 

4. Chan‐Chiao Lin, Jun‐Mo Kang, J.W. Grizzle, and Huei Peng, Energy Management 

Strategy  for  a  Parallel  Hybrid  Electric  Truck,  Proceedings  of  the  American 

Control Conference, Arlington, VA June 25‐27, 2001. 

5. R.  F.  Nelson,  "Power  requirements  for  batteries  in  hybrid  electric  vehicles," 

Journal of Power Sources, vol. 91, pp. 2‐26, 2000. 

6. C.  Fellner  and  J. Newman,  "High‐power  batteries  for  use  in  hybrid  vehicles," 

Journal of Power Sources, vol. 85, pp. 229‐236, 2000. 

7. J. W. J.‐M. K. Chan‐Chiao Lin; Huei Peng; Grizzle, "Power management strategy 

for  a  parallel  hybrid  electric  truck,"  Control  Systems  Technology,  IEEE 

Transactions on, vol. Volume 11,  Issue 6,  Nov. 2003 Page(s):839 ‐ 849 2003. 

102  

8. L.  Jinming,  P.  Huei,  and  Z.  Filipi,  "Modeling  and  Control  Analysis  of  Toyota 

Hybrid  System,"  in  Advanced  Intelligent  Mechatronics.  Proceedings,  2005 

IEEE/ASME International Conference on, 2005, pp. 134‐139. 

9. Pfeiffer, F. , Haj‐Fraj, A., Control optimization for automatic transmission, Sixth 

International Conference on Motion and Vibration Control. Proceedings, 2002, 

879‐84 vol.2. 

10. Numazawa,  A.,  Suzuki,  K.,  Yokoi,  T.,  Automatic  transmission  optimization  for 

better fuel economy, automatic power transmission, Nov. 1985, 188‐97. 

11. Haj‐Fraj,  A.  Pfeiffer,  F.,  A  model  based  approach  for  the  optimization  of 

gearshifting in automatic transmissions, International Journal of Vehicle Design, 

v 28, n 1‐3, 2002, p 171‐88. 

12. Haj‐Fraj,  A.,  Pfeiffer,  F.,  Optimization  of  gear  shift  operations  in  automatic 

transmissions,  6th  International  Workshop  on  Advanced  Motion  Control. 

Proceedings (Cat. No.00TH8494), 2000, p 469‐73. 

13. Jacobson,  Bengt  ,  Berglund,  Sixten  ,  Optimization  of  gearbox  ratios  using 

techniques  for  dynamic  systems,  Doktorsavhandlingar  vid  Chalmers  Tekniska 

Hogskola, n 1468, 1999, 14p. 

14. Nebojsa Milovanovic et al, “Influence of the Variable Valve Timing Strategy on 

the Control of a Homogeneous Charge Compression (HCCI) Engine", SAE 2004‐

01‐1899, 2004 

15. J. L. Chesa Rocafort et al,” A Modeling Investigation into the Optimal Intake and 

Exhaust  Valve  Event  Duration  and  Timing  for  a  Homogenous  Charge 

Compression Ignition Engine”, SAE 2005‐01‐3746, 2005 

16. J. Eng, “Characterization of Pressure Waves in HCCI Combustion”, SAE 2002‐01‐

2859, 2002 

103  

17. Heywood,  J.  B.,—“Internal  combustion  engine  fundamentals”—McGraw‐Hill 

Book Co., 1988 

18. ME 438 course notes 

19. Tang Wei  Kuo,  “Valve  and  Fueling  Strategy  for  operating  a  controlled  auto‐

ignition combustion engine”, SAE HCCI Symposium, San Ramon CA, Sept 25‐26, 

2006 

20. Mechanical  Engineering  Design  by  Joseph  Shigley,  Charles  Mischke,  Richard 

Budynas. 

21. Optimum  design  and  analysis  of  composite  drive  shaft  of  an  automobile  – 

Gummadi Sanjay and Akula Jagadish Kumar. 

22. Principles  of  Optimal  design  [Modeling  and  computation]  –  Panos.  Y. 

Papalambrose & Douglas.J.Wilde 

23. http://www.diracdelta.co.uk/science/source/c/a/campbell%20diagram/source.h

tml 

24. Nick Cristello, and Il Yong Kim : Design optimization of an automotive universal 

joint  considering manufacturing  cost  ‐, Mechanical and Materials Engineering, 

Queen’s University. 

25. The Finite Element Method: Linear Static and Dynamic Finite Element Analysis 

by Thomas J. R. Hughes 

26. Machine Design by Robert L. Norton   

27. Sensitivity Analysis andOptimization of Undamped Rotor Critical Speeds to 

Supports stiffness – Shyh‐Chin Huang & Chin‐Ann Lin, National Taiwan University 

of Science and Technology 

28. iSight v10.0 Manual 

29. Matlab R2006a Manual 

104  

APPENDIX

Battery (Shifang Li)

(1) fmincon 

 

Nonlinear function approximation 

The code of the calculation of the gradient and hessian of the nonlinear  functions has 

been omitted. 

clear all; close all; clc

syms n s pe pr

X1 = [n-60 s-0.6 pe-20000]'

X2 = [n-60 s-0.6 pr+5000]'

I10 = 52.7183+X1'*[-1.13237 -0.587409 3.3971e-3]'+(1/2)*X1'*[5.17929e-2

-2.42916e-2 -9.87605e-5; ...

-2.42916e-2 49.3991 7.28748e-5; -9.87605e-5 7.28748e-5 1.26427e-

7]*X1;

I1a = expand(I10);

I1 = simplify(I1a)

I20 = -10.4871+[0.170355 0.344513 2.04426e-3]*X2+(1/2)*X2'*[-5.53823e-3

-2.42916e-2 -3.23878e-5; ...

-2.42916e-2 -2.8191 -6.91885e-5; -3.23878e-5 -6.91885e-5 2.01985e-

8]*X2;

I2a = expand(I20);

I2 = simplify(I20)

V20 = 476.778 +[7.7449 15.6627 -2.41667e-3]*X2+(1/2)*X2'*[-1.6582e-4

0.24673 -1.98985e-6; ...

0.24673 -127.137 -1.71785e-4; -1.98985e-6 -1.71785e-4 -2.38781e-

8]*X2;

V2a = expand(V20);

V2 = simplify(V2a)

105  

S10 = -1.62711e-3+[6.2068e-5 1.81299e-5 -1.04849e-7]*X1+(1/2)*X1'*[-

3.66748e-6 4.47576e-7 4.79564e-9;...

4.47576e-7 -1.52466e-3 -2.24922e-9; 4.79564e-9 -2.24922e-9 -

3.90206e-12]*X1;

S1a = expand(S10);

S1 = simplify(S1a)

S20 = 3.23675e-4+[-1.06524e-5 -1.06331e-5 -6.30944e-

8]*X2+(1/2)*X2'*[5.26014e-7 3.55172e-7 2.05119e-9;...

3.55172e-7 8.70093e-5 2.13545e-9; 2.05119e-9 2.13545e-9 -6.2341e-

13]*X2;

S2a = expand(S20);

S2 = simplify(S2a)

Hi1 = [5.17929e-2 -2.42916e-2 -9.87605e-5; ...

-2.42916e-2 49.3991 7.28748e-5; -9.87605e-5 7.28748e-5 1.26427e-7];

ei1 = eig(Hi1)

Hi2 = [-5.53823e-3 -2.42916e-2 -3.23878e-5; ...

-2.42916e-2 -2.8191 -6.91885e-5; -3.23878e-5 -6.91885e-5 2.01985e-

8];

ei2 = eig(Hi2)

Hv2 = [-1.6582e-4 0.24673 -1.98985e-6; ...

0.24673 -127.137 -1.71785e-4; -1.98985e-6 -1.71785e-4 -2.38781e-8];

ev2 = eig(Hv2)

Hs1 = [-3.66748e-6 4.47576e-7 4.79564e-9;...

4.47576e-7 -1.52466e-3 -2.24922e-9; 4.79564e-9 -2.24922e-9 -

3.90206e-12];

es1 = eig(Hs1)

Hs2 = [5.26014e-7 3.55172e-7 2.05119e-9;...

3.55172e-7 8.70093e-5 2.13545e-9; 2.05119e-9 2.13545e-9 -6.2341e-

13];

es2 = eig(Hs2)

 

106  

Main function 

clear all; close all;clc

% variables

% n : number of cells %100

% a : SOC P controller gain %2e5

% s : SOC

% pe : EV mode power %4e4

% pr : regenerative braking power %-1e4

% x = [n a s pe pr]

% starting guess

% 100, 2e5, 1, 4e4, -1e4

x0 = [0.2 0.4 0.5 0.5 0.8];

% variable bounds

n_min = 0.1;

a_min = 0.1;

s_min = 0.4;

pe_min = 0.1;

pr_min = 0;

n_max = 1;

a_max = 1;

s_max = 0.7;

pe_max = 1;

pr_max = 1;

lb = [n_min a_min s_min pe_min pr_min]'

ub = [n_max a_max s_max pe_max pr_max]'

% optimization

options = optimset('LargeScale','off','TolX',0.001,'TolFun',0.01,...

'Display','iter','MaxIter',6,'MaxFunEvals',2000);

[x,fval,exitflag,output,lambda,grad,hessian] =

fmincon(@objfun,x0,[],[],[],[],lb,ub,@confun,options);

% display result

107  

disp('optimization result');

disp('x: n a s pe pr, f')

disp([x, fval])

msgbox(['num= ',num2str(x(1)),...

' a=',num2str(x(2)),...

' soc=',num2str(x(3)),...

' pe =',num2str(x(4)),...

' pr =',num2str(x(5)),...

' @ f=', num2str(fval)],'Optimization result');

Objective function

function f = objfun(x)

m = 3.6;

gama = 1.08;

f = 100*x(1)*m*gama

 

Constraint function (1) simplified quadratic form 

 

function [c, ceq] = confun(x)

% Parameters

Ic_min = -291.34;

Id_max = 660.21;

V_max = 9;

Pb_min = 500;

Pc_c_min = -315.8;

Pc_d_max = 315.8;

Cb = 6*60*60/40;

rd_max = 0.002;

rrb_min = 0.0003;

rc_min = 0.001;

% % curve fitting based on experimental data

% Voc = (17.29*(x(3))^5-37.172*(x(3))^4+29.323*(x(3))^3-

10.977*(x(3))^2+2.6624*(x(3))+7.2332);

108  

% Rd = (0.01486*(x(3))^4-0.05091*(x(3))^3+0.08153*(x(3))^2-

0.05206*(x(3))+0.03783);

% Rc = (-0.0149*(x(3))^3+0.031987*(x(3))^2-0.020225*(x(3))+0.023541);

%function approximation

Idis = 61.9628 -2.25016*x(1)+0.0258965*x(1)^2+0.00675047*x(4)-

0.0000987605*x(1)*x(4)+...

6.32135e-8*x(4)^2-30.2269*x(3)-

0.0242916*x(1)*x(3)+0.0000728748*x(4)*x(3)+24.6996*x(3)^2;

Ichg_r = -11.8682+0.355285*x(1)-0.00276912*x(1)^2+0.00413003*x(5)-

0.0000323878*x(1)*x(5)+...

1.00993e-8*x(5)^2+3.14753*x(3)-0.0242916*x(1)*x(3)-

0.0000691885*x(5)*x(3)-1.40955*x(3)^2;

Ichg_a = -11.8682+0.355285*x(1)-0.00276912*x(1)^2+0.00413003*(-

0.6*x(2))-0.0000323878*x(1)*(-0.6*x(2))+...

1.00993e-8*(-0.6*x(2))^2+3.14753*x(3)-0.0242916*x(1)*x(3)-

0.0000691885*(-0.6*x(2))*x(3)-1.40955*x(3)^2;

Vchg_r = -22.884+7.59686*x(1)-0.00008291*x(1)^2-0.0023136*x(5)-

1.98985*10-6*x(1)*x(5)-...

1.19391e-8*x(5)^2+76.2822*x(3)+0.24673*x(1)*x(3)-

0.000171785*x(5)*x(3)-63.5685*x(3)^2;

Vchg_a = -22.884+7.59686*x(1)-0.00008291*x(1)^2-0.0023136*(-0.6*x(2))-

1.98985*10-6*x(1)*(-0.6*x(2))-...

1.19391e-8*(-0.6*x(2))^2+76.2822*x(3)+0.24673*x(1)*x(3)-

0.000171785*(-0.6*x(2))*x(3)-63.5685*x(3)^2;

sd_dis = -0.00517751+0.000185935*x(1)-1.83374e-6*x(1)^2-3.13197e-

7*x(4)+4.79564e-9*x(1)*x(4)...

-1.95103e-12*x(4)^2+0.000951056*x(3)+4.47576e-7*x(1)*x(3)-2.24922e-

9*x(4)*x(3)-0.00076233*x(3)^2

sd_chg_r = 0.000999444-0.0000321704*x(1)+2.63007e-7*x(1)^2-1.90564e-

7*x(5)+2.05119e-9*x(1)*x(5)...

109  

-3.11705e-13*x(5)^2-0.0000734718*x(3)+3.55172e-

7*x(1)*x(3)+2.13545e-9*x(5)*x(3)+0.0000435047*x(3)^2

sd_chg_a = 0.000999444-0.0000321704*x(1)+2.63007e-7*x(1)^2-1.90564e-

7*(-0.6*x(2))+2.05119e-9*x(1)*(-0.6*x(2))...

-3.11705e-13*(-0.6*x(2))^2-0.0000734718*x(3)+3.55172e-

7*x(1)*x(3)+2.13545e-9*(-0.6*x(2))*x(3)+0.0000435047*x(3)^2

% nonlinear inequality constraints

c(1) = x(4)-x(1)*Pc_d_max; % power limit

c(2) = x(5)-Pb_min;

c(3) = x(1)*Pc_c_min-x(5);

c(4) = x(1)*Pc_c_min-x(2)*(-0.6);

c(5) = Idis-Id_max; % current limit

c(6) = Ic_min -Ichg_a;

c(7) = Ic_min - Ichg_r;

c(8) = Vchg_a-x(1)*V_max; % voltage limit

c(9) = Vchg_r-x(1)*V_max;

c(10) = rrb_min-sd_chg_r; % soc changing rate

c(11) = rc_min-sd_chg_a;

c(12) = -sd_dis-rd_max;

% nonlinear equality constraints

ceq = [];

 

Constraint function (2) Original constraints 

 

function [c, ceq] = confun(x)

% Parameters

Ic_min = -291.34;

Id_max = 660.21;

V_max = 1.35;

Pb_min = 500;

Pc_c_min = -315.8;

Pc_d_max = 315.8;

Cb = 28*60*60/190;

%----------------------------

110  

rd_max = 0.002;

rrb_min = 0.0003;

rc_min = 0.001;

% curve fitting based on experimental data in P-SAT

Voc = (17.29*(x(3))^5-37.172*(x(3))^4+29.323*(x(3))^3-

10.977*(x(3))^2+2.6624*(x(3))+7.2332);

Rd = (0.01486*(x(3))^4-0.05091*(x(3))^3+0.08153*(x(3))^2-

0.05206*(x(3))+0.03783);

Rc = (-0.0149*(x(3))^3+0.031987*(x(3))^2-0.020225*(x(3))+0.023541);

% nonlinear inequality constraints

c(1) = (40000*x(4))-(100*x(1))*Pc_d_max+10; %power limit

c(2) = -Pb_min+(-10000*x(5));

c(3) = (100*x(1))*Pc_c_min-(-10000*x(5));

c(4) = (100*x(1))*Pc_c_min-10000*(200000*x(2))*(-0.6);

c(5) = (Voc*(100*x(1))-sqrt((Voc*(100*x(1)))^2-

4*(Rd*(100*x(1)))*(40000*x(4))))/(2*(Rd*(100*x(1))))-Id_max; % current

limit

c(6) = Ic_min-((Voc*(100*x(1)))-sqrt((Voc*(100*x(1)))^2-

4*(Rc*(100*x(1)))*(-10000*x(5))))/(2*(Rc*(100*x(1))));

c(7) = Ic_min-((Voc*(100*x(1)))-sqrt((Voc*(100*x(1)))^2-

4*(Rc*(100*x(1)))*(200000*x(2))*(-0.6)))/(2*(Rc*(100*x(1))));

c(8) = ((Voc*(100*x(1)))+sqrt((Voc*(100*x(1)))^2-

4*(Rc*(100*x(1)))*(200000*x(2))*(-0.6)))/2-(100*x(1))*V_max; % Voltage

limit

c(9) = ((Voc*(100*x(1)))+sqrt((Voc*(100*x(1)))^2-4*(Rc*(100*x(1)))*(-

10000*x(5))))/2-(100*x(1))*V_max;

c(10) = rrb_min-(sqrt((Voc*(100*x(1)))^2-4*(Rc*(100*x(1)))*(-

10000*x(5)))-(Voc*(100*x(1))))/(2*(Rc*(100*x(1)))*(100*x(1))*Cb); % soc

rate limit

c(11) = -(sqrt((Voc*(100*x(1)))^2-4*(Rd*(100*x(1)))*(40000*x(4)))-

(Voc*(100*x(1))))/(2*(Rd*(100*x(1)))*(100*x(1))*Cb)-rd_max;

c(12) = rc_min-(sqrt((Voc*(100*x(1)))^2-

4*(Rc*(100*x(1)))*(200000*x(2))*(-0.1))-

(Voc*(100*x(1))))/(2*(Rc*(100*x(1)))*(100*x(1))*Cb);

c(13) = -((Voc*(100*x(1)))^2-4*(Rd*(100*x(1)))*(40000*x(4)));% maths

limit

111  

c(14) = 0.3-x(3);

% nonlinear equality constraints

ceq = [];

 

 

(2) linear programming 

clear all;close all; clc

% Linear programming process

% By Taylor expansions to linearize the model

%Objective function

m = 0.9979

gama = 1.08

f=[m*gama 0 0 0 0]';

% linear inequavalent constaints

A = [-315.8 0 0 1 0; ...

-315.8 0 0 0 -1; ...

-315.8 0.6 0 0 0;...

-2.25016 0 -30.2269 6.75047e-3 0;...

-0.355285 0 3.14753 0 -4.13003e-3; ...

-0.355285 0 -30.2269 6.75047e-3 0;...

-0.355285 -4.13003e-3 -3.14753 0 0;...

7.59686-9 0 76.2822 0 -2.3136e-3;...

-1.85935e-4 0 -9.51056e-4 3.13197e-7 0;...

3.21704e-5 0 7.34718e-5 0 1.90564e-7;...

-3.21704e-5 1.90564e-7 0 0 7.34718e-5]

b = [0 0 0 660.21-61.6928 291.34-11.8682 ...

291.34-11.8682 22.884 22.884 0.000717751...

-0.0003+9.99444e-4 -0.001-9.99444e-4]'

% variable bounds

n_min = 0;

a_min = 10000;

s_min = 0.3;

pe_min = 12000;

112  

pr_min = -10000;

n_max = 100;

a_max = 200000;

s_max = 0.9;

pe_max = 40000;

pr_max = 0;

lb = [n_min a_min s_min pe_min pr_min]'

ub = [n_max a_max s_max pe_max pr_max]'

% optimization

[x,fval,existflag,output] = linprog(f,A,b,[],[],lb,ub)

% display result

msgbox(['num= ',num2str(x(1)),...

' a=',num2str(x(2)),...

' soc=',num2str(x(3)),...

' pe =',num2str(x(4)),...

' pr =',num2str(x(5)),...

' @ f=', num2str(fval)],...

'Optimization result');

 

 

 

 

 

 

 

 

 

 

 

 

113  

HCCI Engine (Prasad Challa) %% Post-processing Routine

clc

clear

for topind = 1:105

dirs{topind} = ['Set-' num2str(topind)];

cd ..

cd(dirs{topind});

dir = [pwd '\']

file1 = ['HCCI_ME555_datafile1.trn'];

file2 = ['HCCI_ME555_datafile2.trn'];

file3 = ['HCCI_ME555_datafile3.trn'];

file4 = ['HCCI_ME555_consol3-01.trn'];

file5 = ['HCCI_ME555_consol4-01.trn'];

file6 = ['HCCIcorrelation.dat'];

file7 = ['NOxdata.dat'];

file8 = ['TPdata.dat'];

SIc = 19;

Trun = 50;

[A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12] = textread([dir file1],'%s

%s %s %s %s %s %s %s %s %s %s %s');

casenum = floor(length(A1))/(Trun+6);

arr = [];

for i=1:casenum

arr =[arr 7+(Trun+6)*(i-1):(Trun+6)*i];

end

for ind=1:length(arr)

k = arr(ind);

cycle(ind) = str2double(A1{k});

114  

soc(ind) = str2double(A3{k});

b50(ind) = str2double(A4{k});

htav(ind) = str2double(A5{k});

htper(ind) = str2double(A6{k});

pmax(ind) = str2double(A7{k});

pmaxcad(ind) = str2double(A8{k});

dpcyl(ind) = str2double(A9{k});

tmax(ind) = str2double(A10{k});

veff(ind) = str2double(A11{k});

FARtot(ind) = str2double(A12{k});

end

arr = [];

for i=1:casenum

arr =[arr 1+Trun*(i-1):Trun*i-3];

end

cycle = cycle(arr)';

soc = soc(arr+1)';

b50 = b50(arr+1)';

htav = htav(arr+1)';

htper = htper(arr+2)';

pmax = pmax(arr+2)';

pmaxcad = pmaxcad(arr+2)';

dpcyl = dpcyl(arr+2)';

tmax = tmax(arr+2)';

veff = veff(arr+1)';

FARtot = FARtot(arr+1)'; %not sure of this column

clear A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12

disp(['Finished first file in the ' num2str(topind) ' set']);

[A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12] = textread([dir file2],'%s

%s %s %s %s %s %s %s %s %s %s %s');

arr = [];

for i=1:casenum

115  

arr =[arr 6+(Trun+5)*(i-1):(Trun+5)*i];

end

for ind=1:length(arr)

k = arr(ind);

FARtrap(ind) = str2double(A3{k});

airin(ind) = str2double(A4{k});

fuelin(ind) = str2double(A5{k});

fueltrap(ind) = str2double(A6{k});

fuelinj(ind) = str2double(A7{k});

rgf(ind) = str2double(A8{k});

bmep(ind) = str2double(A9{k});

imep(ind) = str2double(A10{k});

imepg(ind) = str2double(A11{k});

fmep(ind) = str2double(A12{k});

end

arr = [];

for i=1:casenum

arr =[arr 1+Trun*(i-1):Trun*i-3];

end

FARtrap = FARtrap(arr+2)';

airin = airin(arr+2)'; %Needs a review

fuelin = fuelin(arr+1)';

fueltrap = fueltrap(arr+1)';

fuelinj = fuelinj(arr+1)';

rgf = rgf(arr)';

bmep = bmep(arr)';

imep = imep(arr)';

imepg = imepg(arr+1)';

fmep = fmep(arr)';

clear A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12

disp(['Finished second file in the ' num2str(topind) ' set']);

116  

[A1,A2,A3,A4,A5,A6,A7,A8,A9] = textread([dir file3],'%s %s %s %s %s

%s %s %s %s');

arr = [];

for i=1:casenum

arr =[arr 6+(Trun+5)*(i-1):(Trun+5)*i];

end

for ind=1:length(arr)

k = arr(ind);

pmep(ind) = str2double(A3{k});

beff(ind) = str2double(A4{k});

ieff(ind) = str2double(A5{k});

bsfc(ind) = str2double(A6{k});

veffeng(ind) = str2double(A7{k});

nvo(ind) = str2double(A8{k});

ivc(ind) = str2double(A9{k});

end

arr = [];

for i=1:casenum

arr =[arr 1+Trun*(i-1):Trun*i-3];

end

pmep = pmep(arr+2)';

beff = beff(arr+1)';

ieff = ieff(arr+1)';

bsfc = bsfc(arr+1)';

veffeng = veffeng(arr+1)';

nvo = nvo(arr)';

ivc = ivc(arr)';

clear A1 A2 A3 A4 A5 A6 A7 A8 A9

disp(['Finished third file in the ' num2str(topind) ' set']);

[A1,A2,A3,A4,A5,A6,A7] = textread([dir file4],'%s %s %s %s %s %s

%s');

117  

arr = [];

for i=1:casenum

arr =[arr 5+(Trun+4)*(i-1):(Trun+4)*i];

end

for ind=1:length(arr)

k = arr(ind);

Btrq1(ind) = str2double(A3{k});

BMEP1(ind) = str2double(A4{k});

BSFC1(ind) = str2double(A5{k});

lambda1(ind) = str2double(A6{k});

ivc1(ind) = str2double(A7{k});

end

arr = [];

for i=1:casenum

arr =[arr 1+Trun*(i-1):Trun*i-3];

end

Btrq1 = Btrq1(arr)';

BMEP1 = BMEP1(arr)'; %Needs a review

BSFC1 = BSFC1(arr+1)';

lambda1 = lambda1(arr+1)';

ivc1 = ivc1(arr)';

clear A1 A2 A3 A4 A5 A6 A7

disp(['Finished fourth file in the ' num2str(topind) ' set']);

[A1,A2,A3,A4,A5,A6,A7,A8,A9,A10] = textread([dir file5],'%s %s %s

%s %s %s %s %s %s %s');

arr = [];

for i=1:casenum

arr =[arr 6+(Trun+5)*(i-1):(Trun+5)*i];

end

118  

for ind=1:length(arr)

k = arr(ind);

RPM1(ind) = str2double(A3{k});

Temp1(ind) = str2double(A4{k});

Phase1(ind) = str2double(A5{k});

Liftm1(ind) = str2double(A6{k});

Angm1(ind) = str2double(A7{k});

mfdot1(ind) = str2double(A8{k});

Tin1(ind) = str2double(A9{k});

LbyAAM1(ind) = str2double(A10{k});

end

arr = [];

for i=1:casenum

arr =[arr 1+Trun*(i-1):Trun*i-3];

end

RPM1 = RPM1(arr)';

Temp1 = Temp1(arr)'; %Needs a review

Phase1 = Phase1(arr)';

Liftm1 = Liftm1(arr)';

Angm1 = Angm1(arr)';

mfdot1 = mfdot1(arr)';

Tin1 = Tin1(arr)';

LbyAAM1 = LbyAAM1(arr)';

clear A1 A2 A3 A4 A5 A6 A7 A8 A9 A10

disp(['Finished fifth file in the ' num2str(topind) ' set']);

[A1,A2,A3,A4,phipr,AFR,

rgf_1,soc_1,b50_1,b90,ceff,ceff_GT,tmax_1,bdu,ww,tivc,ttdc,T60] =

textread([dir file6],...

'%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f');

siarr = [];

hcciarr = [];

for i=1:casenum

siarr =[siarr 1+Trun*(i-1):SIc+Trun*(i-1)];

119  

hcciarr = [hcciarr SIc+1+Trun*(i-1):Trun*i-3];

end

soc_1(siarr) = A2(siarr);

%

% tivc = zeros(size(A1));

% ttdc = zeros(size(A1));

tivc(siarr) = A3(siarr);

ttdc(siarr) = A4(siarr);

ceff(siarr) = 0.98;

ceff_GT(siarr) = 0.98;

clear A1 A2 A3 A4

arr = [];

arr1 = [];

for i=1:casenum

arr = [arr 1+Trun*(i-1):Trun*i-3];

end

phipr = phipr(arr);

AFR = AFR(arr);

rgf_1 = rgf_1(arr);

soc_1 = soc_1(arr);

b50_1 = b50_1(arr);

b90 = b90(arr);

ceff = ceff(arr);

ceff_GT = ceff_GT(arr);

tmax_1 = tmax_1(arr);

bdu = bdu(arr);

ww = ww(arr);

tivc = tivc(arr);

ttdc = ttdc(arr);

T60 = T60(arr);

disp(['Finished sixth file in the ' num2str(topind) ' set']);

120  

[A1,A2,A3] = textread([dir file7],'%f %f %f');

hcciarr = [];

for i=1:casenum

hcciarr = [hcciarr SIc+1+Trun*(i-1):Trun*i];

end

tvar1 = find(A1==50);

tvar2 = tvar1(2:end) - tvar1(1:end-1);

tempvar3 = tvar1(find(tvar2<31));

tvar4 = A1(1:31);

if tvar4(end)~=50

A3(2:end+1) = A3(1:end);

end

for index = 1:length(tempvar3)

tempvar4 = tempvar3(index);

A3(tempvar4) = 0;

A3(tempvar4+1:end+1) = A3(tempvar4:end);

end

SNOx = zeros(casenum*Trun,1);

SNOx(hcciarr) = A3;

SNOx = SNOx(arr);

clear A1 A2 A3

disp(['Finished seventh file in the ' num2str(topind) ' set']);

[A1,A2,A3,A4,A5,A6,A7,A8,A9] = textread([dir file8],'%f %f %f %f %f

%f %f %f %f');

tvar1 = find(A1==50);

tvar2 = tvar1(2:end) - tvar1(1:end-1);

tempvar3 = tvar1(find(tvar2<31));

tvar4 = A1(1:31);

121  

if tvar4(end)~=50

A9(2:end+1) = A9(1:end);

end

for index = 1:length(tempvar3)

tempvar4 = tempvar3(index);

A9(tempvar4) = 0;

A9(tempvar4+1:end+1) = A9(tempvar4:end);

end

A9 = [A9; A9(end)*ones((6200-length(A9)),1)];

Rind = zeros(casenum*Trun,1);

Rind(hcciarr) = A9;

Rind = Rind(arr);

clear A1 A2 A3 A4 A5 A6 A7 A8 A9

disp(['Finished eigth file in the ' num2str(topind) ' set']);

cd ..

cd('Matlab Files');

Trun = 50; Tcase = Trun - 3; icycle = 19;

ic = icycle:Tcase:length(cycle);

ic_end = Tcase:Tcase:length(cycle);

for ind = 1:length(ic_end)

ic_end_dup(4*ind-3:4*ind) = [ic(ind) ic(ind)+1 ic_end(ind)-1

ic_end(ind)];

end

ic_end = ic_end_dup;

isfc = bsfc.*bmep./imep;

122  

data1 = [fuelinj cycle RPM1 Liftm1 Angm1 Phase1 Tin1 Btrq1 BMEP1

BSFC1 lambda1 ivc1 soc b50 imep b90 htav htper pmax pmaxcad dpcyl

Rind/10^6 tmax ...

SNOx veff FARtot FARtrap airin fuelin fueltrap rgf bmep imepg

fmep pmep beff ieff bsfc isfc veffeng ivc phipr AFR AFR/14.7 ceff

ceff_GT bdu ...

ww tivc ttdc T60 tmax_1];

if topind>1

data = textread('NVOdata.txt');

data = data(:,1:52);

else

data=[];

end

data = [data; data1(ic_end,:)];

fid = fopen('NVOdata.txt','wt');

for in=1:size(data,1)

fprintf(fid,'%6.3f\t',data(in,:));

fprintf(fid,'\n');

end

fclose(fid)

fid = fopen('indcount.txt','wt');

fprintf(fid,'%f',topind);

fprintf(fid,'\n');

fclose(fid);

clear

topind = textread('indcount.txt');

topind = topind+1;

end

Trun = 50; Tcase = Trun - 3; icycle = 19; CoVlim = 0.03; SNOxlim = 1;

RIlim = 4;

123  

data = textread('NVOdata.txt');

data = data(:,1:52);

title1 = {'fuelinj' 'cycle' 'RPM' 'LIFTM' 'ANGM' 'PHASE' 'Tin' 'Torque'

'BMEP' 'BSFC' 'Lambda' 'IVC' 'SOC' 'CA50' 'NMEP' 'CA90(deg)' 'htav'

'htper' 'pmax' 'pmaxcad' 'dpcyl' 'Ring Ind' 'Tmax' ...

'SNOx' 'veff' 'FARtot' 'FARtrap' 'airin' 'fuelin' 'fueltrap' 'rgf'

'bmep' 'imepg' 'fmep' 'pmep' 'beff' 'ieff' 'bsfc' 'isfc' 'veffeng'

'ivc' 'phipr' 'AFR' 'l' 'ceff' 'ceff_GT' 'BurnDur' ...

'WW' 'TIVC' 'TTDC' 'T60' 'Tmax_corr'};

fid = fopen('NVOdata.txt','wt');

fprintf(fid,'%s\t',title1{1:end});

fprintf(fid,'\n');

for i=1:size(data,1)

fprintf(fid,'%6.3f\t',data(i,:));

fprintf(fid,'\n');

end

fclose(fid)

%% Data Extraction Routine

clear

clc

title1 = {'cycle' 'LIFTM' 'ANGM' 'PHASE' 'Tin' 'RPM'

'fuelinj' 'Torque' 'BMEP' 'BSFC' 'Lambda' 'IVC'

'SOC' 'CA50' 'NMEP' 'CA90(deg)' 'htav' 'htper'

'pmax' 'pmaxcad' 'dpcyl' 'Ring Ind' 'Tmax'

'SNOx' 'veff' 'FARtot' 'FARtrap' 'airin'

'fuelin' 'fueltrap' 'rgf' 'bmep' 'imepg' 'fmep'

'pmep' 'beff' 'ieff' 'bsfc' 'isfc'

'veffeng' 'ivc' 'phipr' 'AFR' 'l' 'ceff' 'ceff_GT'

'BurnDur' 'WW' 'TIVC' 'TTDC' 'T60' 'Tmax_corr'};

data = xlsread('ME555_Valid_Data.xls');

len = size(data,1);

len1 = size(data1,1);

124  

len2 = size(data2,1);

dim = 6;

x1 = data(1:len,2); % LIFTM

x2 = data(1:len,3); % ANGM

x3 = data(1:len,4); % PHASE

x4 = data(1:len,5); % Tin

x5 = data(1:len,6); % RPM

x6 = data(1:len,7); % mdotf

x11 = data1(1:len1,1); % LIFTM

x21 = data1(1:len1,2); % ANGM

x31 = data1(1:len1,3); % PHASE

x41 = data1(1:len1,4); % Tin

x51 = data1(1:len1,5); % RPM

x61 = data1(1:len1,6); % mdotf

x12 = data2(1:len2,1); % LIFTM

x22 = data2(1:len2,2); % ANGM

x32 = data2(1:len2,3); % PHASE

x42 = data2(1:len2,4); % Tin

x52 = data2(1:len2,5); % RPM

x62 = data2(1:len2,6); % mdotf

NMEP = data(1:len,15);

BMEP = data(1:len,9);

torq = data(1:len,8);

BSFC = data(1:len,10);

NSFC = data(1:len,39);

Ceff = data(1:len,45);

ieffnet = data(1:len,37);

beff = data(1:len,36);

RI = data(1:len,22);

SNOx = data(1:len,24);

lambda = data(1:len,44);

IVC = data(1:len,41);

125  

CoV = data1(1:len1,7);

T60 = data2(1:len2,7);

Optimal_map;

%% Data Interpolation Routine

yr = [NMEP BMEP torq NSFC BSFC Ceff ieffnet beff lambda SNOx IVC RI];

xr = [x1 x2 x3 x4 x5 x6]';

yr1 = CoV;

yr2 = T60;

xr1 = [x11 x21 x31 x41 x51 x61]';

xr2 = [x12 x22 x32 x42 x52 x62]';

x = [0.5 0.5 1 0 0 0];

title2 = {'NMEP' 'BMEP' 'torq' 'NSFC' 'BSFC' 'Ceff' 'ieffnet' 'beff'

'Lambda' 'SNOx' 'IVC' 'RI'};

for i = 1:size(yr,2)

y1(i) = mlliblip('Value',dim,len,x,xr,yr(:,i),2);

LC(i) = mlliblip('ComputeLipschitz',dim,len,xr,yr(:,i));

y2(i) = mlliblip('Value',dim,len,x,xr,yr(:,i),LC(i));

end

y11 = mlliblip('Value',dim,len1,x,xr1,yr1,2);

LC1 = mlliblip('ComputeLipschitz',dim,len1,xr1,yr1);

y21 = mlliblip('Value',dim,len1,x,xr1,yr1,LC1);

y12 = mlliblip('Value',dim,len2,x,xr2,yr2,2);

LC2 = mlliblip('ComputeLipschitz',dim,len2,xr2,yr2);

y22 = mlliblip('Value',dim,len2,x,xr2,yr2,LC2);

find_opt;

%% Finding Optimal points over the entire Engine map

%% Normalization Data

RPMmin = 1000; RPMmax = 5000;

mfdotmin = 7; mfdotmax = 18;

126  

Lmin = 0.077; Lmax = 1.1;

Dmin = 0.526; Dmax = 1;

Pmin = -68.726; Pmax = 40;

Timin = 323.15; Timax = 373.15;

RImin = 0; RImax = 1564.3;

SNmin = 0; SNmax = 175.82;

BMmin = -2.63; BMmax = 27.9195;

Tmin = -17.2485; Tmax = 122.0865;

NMmin = 5.46; NMmax = 24.064;

lamin = 2.202; lamax = 1.001;

iemin = 23.729; iemax = 41.869;

bemin = -11.496; bemax = 32.814;

Tcmin = 608.84; Tcmax = 829.9;

NSmin = 194.093; NSmax = 342.467;

Comin = 0; Comax = 71.06732;

RPM = [4000:250:5000];

mfdot = [4:0.5:8 9:13 13.5:0.5:20];

x5v = (RPM-RPMmin)/(RPMmax-RPMmin);

x6v = (mfdot-mfdotmin)/(mfdotmax-mfdotmin);

xopt = [];yfin = [];

[x1,x2,x3,x4]=ndgrid([0.1:0.1:1],[0.1:0.1:1],[0:0.1:1],[0:0.1:1]);

x1 = reshape(x1,prod(size(x1)),1);

x2 = reshape(x2,prod(size(x2)),1);

x3 = reshape(x3,prod(size(x3)),1);

x4 = reshape(x4,prod(size(x4)),1);

for i = 1:length(x5v)

for j = 1:length(x6v)

tic

x5 = x5v(i)*ones(size(x1));

x6 = x6v(j)*ones(size(x1));

for ki = 1:size(x1)

x = [x1(ki) x2(ki) x3(ki) x4(ki) x5(ki) x6(ki)];

for k = 1:size(yr,2)

127  

yval(ki,k) =

mlliblip('Value',dim,len,x,xr,yr(:,k),LC(k));

end

yval(ki,size(yr,2)+1) =

mlliblip('Value',dim,len1,x,xr1,yr1,LC1);

yval(ki,size(yr,2)+2) =

mlliblip('Value',dim,len2,x,xr2,yr2,LC2);

end

RIv = (RImax-RImin)*yval(:,12)+RImin;

SNOxv = (SNmax-SNmin)*yval(:,10)+SNmin;

lambdav = (lamax-lamin)*yval(:,9)+lamin;

NMEPv = (NMmax-NMmin)*yval(:,1)+NMmin;

BMEPv = (BMmax-BMmin)*yval(:,2)+BMmin;

ieffv = (iemax-iemin)*yval(:,7)+iemin;

beffv = (bemax-bemin)*yval(:,8)+bemin;

Torqv = (Tmax-Tmin)*yval(:,3)+Tmin;

NSFCv = (NSmax-NSmin)*yval(:,4)+NSmin;

BSFCv = NSFCv.*NMEPv./BMEPv;

T60v = (Tcmax-Tcmin)*yval(:,14)+Tcmin;

Covv = (Comax-Comin)*yval(:,13)+Comin;

RPMv = (RPMmax-RPMmin)*x5+RPMmin;

mfdotv = (mfdotmax-mfdotmin)*x6+mfdotmin;

Tthv = 570 + 25*RPMv/1000;

%% Brake Parameter Positivity

BSFCv = (BSFCv+abs(BSFCv))/2;

beffv = (beffv+abs(beffv))/2;

BMEPv = (BMEPv+abs(BMEPv))/2;

Torqv = (Torqv+abs(Torqv))/2;

y = [x1 x2 x3 x4 x5 x6 NMEPv BMEPv ieffv BSFCv Torqv RIv SNOxv

lambdav T60v Tthv Covv];

i1 = find(y(:,14)>=0.98);

y = y(i1,:);

i2 = find(y(:,12)<=4.2);

y = y(i2,:);

i3 = find(y(:,13)<=1.05);

128  

y = y(i3,:);

i4 = find(y(:,15)>=y(:,16));

y = y(i4,:);

i5 = find(y(:,1)<=y(:,2).^2);

y = y(i5,:);

i6 = find(y(:,end)<=3.2);

y = y(i6,:);

[tmp,i7] = max(y(:,7));

if i7~=0

yf = y(i7(1),:);

else

yf = zeros(1,17);

end

[x1m,x2m,x3m,x4m]=ndgrid([max(yf(1)-

0.1,0.1):0.01:min(yf(1)+0.1,1)],[max(0.1,yf(2)-

0.1):0.01:min(yf(2)+0.1,1)],[max(yf(3)-

0.1,0):0.01:min(yf(3)+0.1,1)],yf(4));

x1m = reshape(x1m,prod(size(x1m)),1);

x2m = reshape(x2m,prod(size(x2m)),1);

x3m = reshape(x3m,prod(size(x3m)),1);

x4m = reshape(x4m,prod(size(x4m)),1);

x5m = x5v(i)*ones(size(x1m));

x6m = x6v(j)*ones(size(x1m));

yval = [];

for ki = 1:size(x1m)

x = [x1m(ki) x2m(ki) x3m(ki) x4m(ki) x5m(ki) x6m(ki)];

for k = 1:size(yr,2)

yval(ki,k) =

mlliblip('Value',dim,len,x,xr,yr(:,k),LC(k));

end

yval(ki,size(yr,2)+1) =

mlliblip('Value',dim,len1,x,xr1,yr1,LC1);

yval(ki,size(yr,2)+2) =

mlliblip('Value',dim,len2,x,xr2,yr2,LC2);

end

129  

RIv = (RImax-RImin)*yval(:,12)+RImin;

SNOxv = (SNmax-SNmin)*yval(:,10)+SNmin;

lambdav = (lamax-lamin)*yval(:,9)+lamin;

NMEPv = (NMmax-NMmin)*yval(:,1)+NMmin;

BMEPv = (BMmax-BMmin)*yval(:,2)+BMmin;

ieffv = (iemax-iemin)*yval(:,7)+iemin;

beffv = (bemax-bemin)*yval(:,8)+bemin;

Torqv = (Tmax-Tmin)*yval(:,3)+Tmin;

NSFCv = (NSmax-NSmin)*yval(:,4)+NSmin;

BSFCv = NSFCv.*NMEPv./BMEPv;

T60v = (Tcmax-Tcmin)*yval(:,14)+Tcmin;

Covv = (Comax-Comin)*yval(:,13)+Comin;

RPMv = (RPMmax-RPMmin)*x5m+RPMmin;

mfdotv = (mfdotmax-mfdotmin)*x6m+mfdotmin;

Tthv = 570 + 25*RPMv/1000;

%% Brake Parameter Positivity

BSFCv = (BSFCv+abs(BSFCv))/2;

beffv = (beffv+abs(beffv))/2;

BMEPv = (BMEPv+abs(BMEPv))/2;

Torqv = (Torqv+abs(Torqv))/2;

y = [x1m x2m x3m x4m x5m x6m NMEPv BMEPv ieffv BSFCv Torqv RIv

SNOxv lambdav T60v Tthv Covv];

i1 = find(y(:,14)>=0.98);

y = y(i1,:);

i2 = find(y(:,12)<=4.2);

y = y(i2,:);

i3 = find(y(:,13)<=1.05);

y = y(i3,:);

i4 = find(y(:,15)>=y(:,16));

y = y(i4,:);

i5 = find(y(:,1)<=y(:,2).^2);

y = y(i5,:);

i6 = find(y(:,end)<=3.2);

y = y(i6,:);

[tmp,i7] = max(y(:,7));

if i7~=0

130  

yf = y(i7(1),:);

xopt(end+1,:) = yf(1:6);

yfin(end+1,:) = yf;

else

yf = zeros(1,17);

end

(i-1)*length(x6v)+j

size(yfin)

toc

end

end

fid = fopen('Optdata.txt','wt');

fprintf(fid,'\n');

for i=1:size(yfin,1)

fprintf(fid,'%6.3f\t',yfin(i,:));

fprintf(fid,'\n');

end

fclose(fid)

%% Monotonicity Analysis Routine

%% Normalization Data

RPMmin = 1000; RPMmax = 5000;

mfdotmin = 7; mfdotmax = 18;

Lmin = 0.077; Lmax = 1.1;

Dmin = 0.526; Dmax = 1;

Pmin = -68.726; Pmax = 40;

Timin = 323.15; Timax = 373.15;

RImin = 0; RImax = 1564.3;

SNmin = 0; SNmax = 175.82;

BMmin = -2.63/1.5; BMmax = 27.9195/1.5;

Tmin = -17.2485/1.5; Tmax = 122.0865/1.5;

NMmin = 5.46; NMmax = 24.064;

lamin = 2.202; lamax = 1.001;

iemin = 23.729; iemax = 41.869;

bemin = -11.496; bemax = 32.814;

131  

Tcmin = 608.84; Tcmax = 829.9;

NSmin = 194.093; NSmax = 342.467;

Comin = 0; Comax = 71.06732;

IVCmin = -208.726;IVCmax = -100;

x = [[0:0.05:1]' ones(21,5)*0.5];

x1 = x(:,2);x2 = x(:,3); x3 = x(:,4); x4 = x(:,1); x5 = x(:,5); x6 =

x(:,6);

for ki = 1:size(x1)

x = [x1(ki) x2(ki) x3(ki) x4(ki) x5(ki) x6(ki)];

for k = 1:size(yr,2)

yval(ki,k) = mlliblip('Value',dim,len,x,xr,yr(:,k),LC(k));

end

yval(ki,size(yr,2)+1) = mlliblip('Value',dim,len1,x,xr1,yr1,LC1);

yval(ki,size(yr,2)+2) = mlliblip('Value',dim,len2,x,xr2,yr2,LC2);

end

RIv = (RImax-RImin)*yval(:,12)+RImin;

SNOxv = (SNmax-SNmin)*yval(:,10)+SNmin;

lambdav = (lamax-lamin)*yval(:,9)+lamin;

NMEPv = (NMmax-NMmin)*yval(:,1)+NMmin;

BMEPv = (BMmax-BMmin)*yval(:,2)+BMmin;

ieffv = (iemax-iemin)*yval(:,7)+iemin;

beffv = (bemax-bemin)*yval(:,8)+bemin;

Torqv = (Tmax-Tmin)*yval(:,3)+Tmin;

NSFCv = (NSmax-NSmin)*yval(:,4)+NSmin;

BSFCv = NSFCv.*NMEPv./BMEPv;

T60v = (Tcmax-Tcmin)*yval(:,14)+Tcmin;

RPMv = (RPMmax-RPMmin)*x5+RPMmin;

mfdotv = (mfdotmax-mfdotmin)*x6+mfdotmin;

Tthv = 560 + 25*RPMv/1000;

IVCv = (IVCmax-IVCmin)*yval(:,11)+IVCmin;

Covv = (Comax-Comin)*yval(:,13)+Comin;

y1 = [NMEPv BMEPv NSFCv BSFCv ieffv Torqv lambdav IVCv T60v RIv SNOxv

Covv];

132  

title2 = {'NMEP' 'BMEP' 'NSFC' 'BSFC' 'ieff' 'Torque' 'lambda' 'IVC'

'T60' 'RI' 'SNOx' 'CoV' };

testnum = 1:size(y1,2)/4;

figure(1)

scale = 1;

for i = testnum

clf

j = 4*i-3;

subplot(2,2,1);

plot(x4,y1(:,j)*scale);

title([title2{j} ' w.r.t. x4']);

xlabel('x4');ylabel(title2{j});

j = 4*i-2;

subplot(2,2,2);

plot(x4,y1(:,j)*scale);

title([title2{j} ' w.r.t. x4']);

xlabel('x4');ylabel(title2{j});

j = 4*i-1;

subplot(2,2,3);

plot(x4,y1(:,j)*scale);

title([title2{j} ' w.r.t. x4']);

xlabel('x4');ylabel(title2{j});

j = 4*i;

subplot(2,2,4);

plot(x4,y1(:,j)*scale);

title([title2{j} ' w.r.t. x4']);

xlabel('x4');ylabel(title2{j});

pause;

end

133  

Automatic Transmission (Rajit Johri)

Code for iSight 

1. Initialization Code 

% ME555-Optimization % Initialization code % This is the initialization file. % It calls other files in the current directory to load constant values. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%Hybrid parameters %%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% eng_trq_scale = 1; regen_switch = 1; % Regenerative braking on/off -------1/0 Mode = 1; % 1--> Hybrid Mode ; 0 --> Engine only MOde; gr_motor = 3.0; %motor to diff gear ratio gr_motor_eff = 0.96; %motor to diff gear ratio %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %Simulation initial conditions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ess_init_soc=0.6; %initial battery state of charge (1.0 = 100% charge) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % BATTERY CONTROL %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% SOC boundaries high_soc=0.75; % highest desired battery state of charge low_soc=0.50; % below this value, the engine must be on and charge stop_soc=0.45; % lowest desired battery state of charge, avoid reaching this point regstop_soc=0.8; % reach this point, regenerative brake will stop soc_control=0.55; % for charging mode control target_soc=0.6; % try to maintain the soc %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Component Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Driver Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Parameters of the driver speed controller Kp_v=30; % Cruise-controller's parameter Ti_v=2.5 ; % Cruise-controller's parameter

134  

Tt_v=Ti_v/8.; % Cruise-controller's parameter Gain_v=70; % Cruise-controller's parameter Kp_norm = 1; Ki_d = 0.8; Kp_d = 1.5; Kprev_d = 0.2143; Kp1_d = 0.2; Kp3_d = 0.4; Kp5_d = 0.6; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Engine Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %Equinox Engine load('stf_map_equinox_parallel.mat'); %row rpm_engine=speed; %column mdot_fuel=fuel_col/3; torque_engine=stf_map; Pwr_eng_max = 139200.0; engine_max=[999.1 235.6 1397.6 257.2 1800.5 267.9 2199.5 267.3 2600.6 276.9 3002.9 277.0 3402.5 277.9 3802.4 283.2 4002.4 281.2 4203.4 281.2 4602.8 276.1 4802.5 270.9 5003.5 264.7 5203.8 255.4 5403.8 244.7 5505.2 238.2]; eng_max_trq=engine_max(:,2); % max torque N-m eng_max_spd=2*pi/60*engine_max(:,1); % max rad/s rpm_e=[50 999.1 1397.6 1800.5 2199.5 2600.6 3002.9 3402.5 3802.4 4002.4 4203.4 4602.8 4802.5 5003.5 5203.8 5403.8 5505.2]; fmin_mg=1000/3*[0.09 0.110628147 0.115678137 0.11889965 0.114980684 0.118831121 0.119771686 0.121854048 0.127972726 0.130885664 0.132374398 0.128162451 0.128090291 0.126714458 0.124238563 0.120867694 0.117831808]; fmin_mg_na=1000*0.095/3*ones(1,17); % Predefined simulation parameters and onstants rpm2rads = 2*pi/60; % Conversion from rpm to rad/s ms2mph = 2.23694; % Conversion from m/s to mph time_step = 0.1; % Time step for storage time_step_fast = 0.01; % Time step for fine storage start_time = 0; % Start of simulation end_time = 140; % End of simulation

135  

num_points = (end_time-start_time)/time_step; num_points_fast = (end_time-start_time)/time_step_fast; % Parameters of the engine speed controller and the vehicle speed controller engine_inertia=0.11; % kg-m^2 trq_scale = 1.0; % Engine scaling parameter eng_spd_scale = 1.0; rpm_idle = 700; % Engine idle speed rpm0 = 850*rpm2rads; % Engine initial speed (rad/s) rpm_rated = 5500; % Engine rated speed (rpm) rpm_hi_idle=rpm_rated+200; % Engine hi idle speed (rpm) no_cyl=6; % Number of engine cylinders Kp_rpm=2.7013; % Engine-idle-speed-PID-controller's parameter Ti_rpm=0.6464; % Engine-idle-speed-PID-controller's parameter Tt_rpm=Ti_rpm/8.; % Engine-idle-speed-controller's parameter rpm0_c=1000; % Engine initial speed (rpm) used in controller rpm_max_c=rpm_rated; % Engine maximum speed (rpm) used in controller %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Transmission Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Transmission Parameters % Gear Efficiencies g1_eff = 0.987; g2_eff = 0.987; g3_eff = 0.987; g4_eff = 1; g5_eff = 0.994; TWAIT = 2; % Variable usedin Stateflow Shift Logic Ts = 0.5; % Blending Function Shift time (sec) % Differential Parameters differential_ratio = 2.7; differential_efficiency = 0.97; gr_diff = differential_ratio; % reqd by Power Mgmt % Clucth Lock Up Schedule lockth = [0 100]; % Lock throttle(%) locktab = [1000 1000 1000 1000 1000 1000]; % Lock Schedule unlockth = [0 100]; % Unlock Throttle(%) unlocktab = [1000 1000 1000 1000 1000 1000]; % Unlock Schedule % Torque Converter Paramneters

136  

tc_stiffness = 6667; % Locked Spring Stiffness tc_damping = 12; % Locked Damping Ratio tc_Tmax = 1000; % Max Torque speedratio = [0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.86 0.9 1 1.03 1.05 1.07 1.1 1.15 1.2]; Kfactor = [137.4652 137.065 140 142 145 147 155 165 177 190 215 410 300 260 240 220 200 180]; Torqueratio = [2.232 2.075 1.975 1.846 1.72 1.564 1.409 1.254 1.096 1.002 0.999 1.001 1.002 1.002 1.001 1.001 1.001 1.001]; % Blending Function Parameters Ts = 0.5; % Shift Duration uplin = 0; % Decide between Torque blending function aup1 = 0.3; aup2 = 0.44; bup1 = 0.51; bup2 = 0.74; % Drivertrain drivetrain_stiffness = 14325; drivetrain_damping = 46; T_charging = 0; drivetrain_inertia = 0.0275; % Churning Losses spinrpm = [700 5000]; spintrq = [5 6 8 9; 7 8 10 15]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Vehicle Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Vehicle Parameters rad_wh = 0.356; % Radius of wheel veh_mass = 1713; % Vehicle Mass tire_eff = 0.99; % Tire Efficiency Cd = 0.417; % Coefficient of Drag Av = 2.686; % Vehicle frontal area % Rolling Resistnace Parameters alpha_V = -0.41717; beta_V = 0.93975; a_V = 0.11613; b_V = 2.3803E-04; c_V = 1.9825E-06; Infl_pr = 260; % Inflation Pressure [kPa] Tire_load = 5663; % [N] % Brake parameters Rviscous = 150; % Viscous Force [Nm/(rad/sec)] Fstat = 3000; % Static Force [Nm] w_min_brake = 0.01; % Min Speed

137  

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Electric Motor Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% m_description='PRIUS_JPN 30-kW permanent magnet motor/controller'; m_inertia=0.0226; % (kg*m^2), rotor's rotational inertia m_mass=56.75; % (kg), mass of motor and enclosure % (rad/s), speed range of the motor m_map_spd=[0 500 1000 1500 2000 2500 3000 3500 4000 4500 6000]*(2*pi)/60; % (N*m), torque range of the motor m_map_trq=[-305 -275 -245 -215 -185 -155 -125 -95 -65 -35 -5 0 5 35 65 95 125 155 185 215 245 275 305]; % (--), efficiency map indexed vertically by m_map_spd and horizontally by m_map_trq % multiplied by 0.95 because data was for motor only, .95 accounts for inverter/controller efficiencies m_eff_map=0.95*[... .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 .905 0.56 0.59 0.62 0.65 0.68 0.72 0.76 0.80 0.85 0.90 0.87 .905 0.87 0.90 0.85 0.80 0.76 0.72 0.68 0.65 0.62 0.59 0.56 0.72 0.74 0.76 0.78 0.81 0.83 0.86 0.89 0.91 0.94 0.85 .905 0.85 0.94 0.91 0.89 0.86 0.83 0.81 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.90 0.92 0.93 0.94 0.83 .905 0.83 0.94 0.93 0.92 0.90 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.93 0.95 0.95 0.82 .905 0.82 0.95 0.95 0.93 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.94 0.95 0.95 0.81 .905 0.81 0.95 0.95 0.94 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.95 0.96 0.95 0.81 .905 0.81 0.95 0.96 0.95 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.95 0.96 0.95 0.80 .905 0.80 0.95 0.96 0.95 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.95 0.95 0.95 0.80 .905 0.80 0.95 0.95 0.95 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.95 0.95 0.95 0.79 .905 0.79 0.95 0.95 0.95 0.92 0.88 0.86 0.78 0.76 0.74 0.72 0.72 0.74 0.76 0.78 0.86 0.88 0.92 0.95 0.95 0.95 0.79 .905 0.79 0.95 0.95 0.95 0.92 0.88 0.86 0.78 0.76 0.74 0.72]; % LIMITS %m_max_crrnt=90; % maximum current draw for motor/controller set, A m_max_crrnt=120;

138  

% UQM's max current is 'adjustable,' above is an estimate m_min_volts=60; % minimum voltage for motor/controller set, V % maximum continuous torque corresponding to speeds in mc_map_spd m_max_trq_data=[305.0 305.0 305.0 305.0 305.0 244.0 203.3 174.3 152.5 135.6 122.0 110.9 101.7 93.8 87.1 81.3 76.3 71.8 67.8 47.7]; m_spd_data=[0 235 470 705 940 1175 1410 1645 1880 2115 2350 2585 2820 3055 3290 3525 3760 3995 4230 6000]*(2*pi)/60; m_max_trq=interp1(m_spd_data,m_max_trq_data,m_map_spd,'linear'); m_max_gen_trq=-m_max_trq; % estimate clear m_max_trq_data m_spd_data %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Battery Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % NiMH Battery Parameters ess_description='Spiral Wound NiMH Used in Insight & Japanese Prius'; % Assume fix temperature of the model ess_fixtemp=40; enable_stop=1; % SOC RANGE over which data is defined ess_soc=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1]; % (--) % The following data was obtained at 25 deg C. Assume all values are the same for all temperatures ess_tmp=[0 25]; % (C) place holder for now % LOSS AND EFFICIENCY parameters (from ESS_Prius_pack) % Parameters vary by SOC horizontally, and temperature vertically % the average of 5 discharge cycles at 6.5A at 25 deg C was 5.995Ah. % Data (Ah): 6.030 5.973 5.990 5.989 5.995 ess_max_ah_cap=[6.0 6.0]; % (A*h), max. capacity at 6.5 A, indexed by ess_tmp % module's resistance to being discharged, indexed by ess_soc and ess_tmp % The discharge resistance is the average of 4 tests from 10 to 90% soc at the following % discharge currents: 6.5, 6.5, 18.5 and 32 Amps % The 0 and 100 % soc points were extrapolated ess_r_dis=[ 0.0377 0.0338 0.0300 0.0280 0.0275 0.0268 0.0269 0.0273 0.0283 0.0298 0.0312 0.0377 0.0338 0.0300 0.0280 0.0275 0.0268 0.0269 0.0273 0.0283 0.0298 0.0312 ]; % module's resistance to being charged, indexed by ess_soc and ess_tmp % The discharge resistance is the average of 4 tests from 10 to 90% soc at the following % discharge currents: 5.2, 5.2, 15 and 26 Amps % The 0 and 100 % soc points were extrapolated ess_r_chg=[ 0.0235 0.0220 0.0205 0.0198 0.0198 0.0196 0.0198 0.0197 0.0203 0.0204 0.0204 0.0235 0.0220 0.0205 0.0198 0.0198 0.0196 0.0198 0.0197 0.0203 0.0204 0.0204 ];

139  

% module's open-circuit (a.k.a. no-load) voltage, indexed by ess_soc and ess_tmp ess_voc=[ 7.2370 7.4047 7.5106 7.5873 7.6459 7.6909 7.7294 7.7666 7.8078 7.9143 8.3645 7.2370 7.4047 7.5106 7.5873 7.6459 7.6909 7.7294 7.7666 7.8078 7.9143 8.3645 ]; % LIMITS (from ESS_Prius_pack) ess_min_volts=6;% 1 volt per cell times 6 cells lowest from data was 255V so far 8/26/99 ess_max_volts=9; % 1.5 volts per cell times 6 cells highest from data so far was 361V 8/26/99 % OTHER DATA (from ESS_Prius_pack except where noted) ess_module_mass=(44*.4536)/20; % (kg), mass of Insight pack (44 lb Automotive News, July 12) divided by 20 modules ess_module_num=40; %20 modules in INSIGHT pack, 40 modules in Prius Pack ess_cap_scale=1; % scale factor for module max ah capacity % user definable mass scaling relationship ess_mass_scale_fun=inline('(x(1)*ess_module_num+x(2))*(x(3)*ess_cap_scale+x(4))*(ess_module_mass)','x','ess_module_num','ess_cap_scale','ess_module_mass'); ess_mass_scale_coef=[1 0 1 0]; % coefficients in ess_mass_scale_fun % user definable resistance scaling relationship ess_res_scale_fun=inline('(x(1)*ess_module_num+x(2))/(x(3)*ess_cap_scale+x(4))','x','ess_module_num','ess_cap_scale'); ess_res_scale_coef=[1 0 1 0]; % coefficients in ess_res_scale_fun %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%% Drive Cycle Initialization %%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CYC_FUDS; %Load FUDS driving cycle % One cycle % time_cycle=cyc_mph(:,1); % driving_cycle=cyc_mph(:,2); % Two cylces for hybrid suimulation time_cycle=[cyc_mph(:,1);cyc_mph(:,1)+cyc_mph(length(cyc_mph),1)]; driving_cycle=[cyc_mph(:,2);cyc_mph(:,2)];

 

 

 

140  

2. Normalization  

% Normalization routine clc clear all GR1 = 2/(5 - 4)*GR1 + (1 - 2/(5 - 4)*5) GR2 = 2/(3.5 - 2.6)*GR2 + (1 - 2/(3.5 - 2.6)*3.5) GR3 = 2/(2.4 - 1.5)*GR3 + (1 - 2/(2.4 - 1.5)*2.4) GR4 = 2/(1.6 - 1)*GR4 + (1 - 2/(1.6 - 1)*1.6) GR5 = 2/(1.2 - 0.8)*GR5 + (1 - 2/(1.2 - 0.8)*1.2) V12 = 2/10*V12 + (1 - 2) V23 = 2/30*V23 + (1 - 2) V34 = 2/40*V34 + (1 - 2) V45 = 2/50*V45 + (1 - 2) V21 = 2/10*V21 + (1 - 2) V32 = 2/30*V32 + (1 - 2) V43 = 2/40*V43 + (1 - 2) V54 = 2/50*V54 + (1 - 2) A12 = 2/(85-60)*A12 + (1 - 2/(85-60)*85) A23 = 2/(80-50)*A23 + (1 - 2/(80-50)*80) A34 = 2/(80-50)*A34 + (1 - 2/(80-50)*80) A45 = 2/(75-45)*A45 + (1 - 2/(75-45)*75) A21 = 2/(87-60)*A21 + (1 - 2/(87-60)*87) A32 = 2/(85-55)*A32 + (1 - 2/(85-55)*85) A43 = 2/(80-50)*A43 + (1 - 2/(80-50)*80) A54 = 2/(75-45)*A54 + (1 - 2/(75-45)*75)

3. Constraints Calculation 

% constraints for optimization % Upshift speed constraints g1 = 2 + V12 - V23; g2 = 2 + V23 - V34; g3 = 2 + V34 - V45; % Downshift speed Constraints g4 = V21 + 2 - V12; g5 = V21 - 0.85*V12; g6 = V32 + 3 - V23; g7 = V32 - 0.85*V23; g8 = V43 + 4 - V34; g9 = V54 + 4 - V45; g10 = V21 + 1 - V32; g11 = V32 + 1 - V43; g12 = V43 + 1 - V54; g13 = V34 - 8 - V43; g14 = V45 - 8 - V54;

141  

% Upshift Angle Constraints g15 = (100/tan(A12*pi/180) + V12) - (100/tan(A23*pi/180) + V23); g16 = (100/tan(A23*pi/180) + V23) - (100/tan(A34*pi/180) + V34); g17 = (100/tan(A34*pi/180) + V34) - (100/tan(A45*pi/180) + V45); % Downshift Angle Constraints g18 = (100/tan(A21*pi/180) + V21) - (100/tan(A32*pi/180) + V32); g19 = (100/tan(A32*pi/180) + V32) - (100/tan(A43*pi/180) + V43); g20 = (100/tan(A43*pi/180) + V43) - (100/tan(A54*pi/180) + V54); % Gear Constraints g21 = GR2 - GR1; g22 = GR3 - GR2; g23 = GR4 - GR3; g24 = GR5 - GR4;

4. Shift Logic Map Generation 

% Shift Logic % Optimization % Downshift V21_100 = 100/tan(A21*pi/180) + V21; V32_100 = 100/tan(A32*pi/180) + V32; V43_100 = 100/tan(A43*pi/180) + V43; V54_100 = 100/tan(A54*pi/180) + V54; downtab = [0 V21 V32 V43 V54; 0,V21_100 V32_100 V43_100 V54_100]; downth = [0;100]; % Upshift V12_100 = 100/tan(A12*pi/180) + V12; V23_100 = 100/tan(A23*pi/180) + V23; V34_100 = 100/tan(A34*pi/180) + V34; V45_100 = 100/tan(A45*pi/180) + V45; uptab = [V12,V23,V34,V45,300; V12_100,V23_100,V34_100,V45_100,300]; upth = [0;100];

 

5. Objective Calculation 

% Objective function calculation % Fuel Economy Calculation cyc_time=400*10; cyc_miles=distan(cyc_time); fuel_gallon=fuel_cons(cyc_time,2)/2.8012; milespergallon = cyc_miles / fuel_gallon; mpg = -milespergallon;

142  

6. Un – Normalization 

% Un - normalize results GR1 = (5 - 4)/2*GR1 + (5 - (5 - 4)/2) GR2 = (3.5 - 2.6)/2*GR2 + (3.5 - (3.5 - 2.6)/2) GR3 = (2.4 - 1.5)/2*GR3 + (2.4 - (2.4 - 1.5)/2) GR4 = (1.6 - 1)/2*GR4 + (1.6 - (1.6 - 1)/2) GR5 = (1.2 - 0.8)/2*GR5 + (1.2 - (1.2 - 0.8)/2) V12 = 10/2*V12 + (10 - 10/2) V23 = 30/2*V23 + (30 - 30/2) V34 = 40/2*V34 + (40 - 40/2) V45 = 50/2*V45 + (50 - 50/2) V21 = 10/2*V21 + (10 - 10/2) V32 = 30/2*V32 + (30 - 30/2) V43 = 40/2*V43 + (40 - 40/2) V54 = 50/2*V54 + (50 - 50/2) A12 = (85-60)/2*A12 + (85 - (85-60)/2) A23 = (80-50)/2*A23 + (80 - (80-50)/2) A34 = (80-50)/2*A34 + (80 - (80-50)/2) A45 = (75-45)/2*A45 + (75 - (75-45)/2) A21 = (87-60)/2*A21 + (87 - (87-60)/2) A32 = (85-55)/2*A32 + (85 - (85-55)/2) A43 = (80-50)/2*A43 + (80 - (80-50)/2) A54 = (75-45)/2*A54 + (75 - (75-45)/2)

 

fmincon Optimzation (Matlab) 

1. Main routine 

% FMINCON routine implementation % for optimizing the model clc clear % Initial Condition GR1 = 4.856; GR2 = 2.931; GR3 = 1.709; GR4 = 1.1298; GR5 = 0.8813; V12 = 6.1093; V23 = 25.6515; V34 = 33.6112; V45 = 42.6825; V21 = 0.8362; V32 = 9.1855; V43 = 11.348;

143  

V54 = 11.94; A12 = 75.4871; A23 = 59.3; A34 = 60.4513; A45 = 63.4356; A21 = 76.8998; A32 = 73.964; A43 = 69.2; A54 = 63.855; % Normalize Varibales GR1 = 2/(5 - 4)*GR1 + (1 - 2/(5 - 4)*5); GR2 = 2/(3.5 - 2.6)*GR2 + (1 - 2/(3.5 - 2.6)*3.5); GR3 = 2/(2.4 - 1.5)*GR3 + (1 - 2/(2.4 - 1.5)*2.4); GR4 = 2/(1.6 - 1)*GR4 + (1 - 2/(1.6 - 1)*1.6); GR5 = 2/(1.2 - 0.8)*GR5 + (1 - 2/(1.2 - 0.8)*1.2); V12 = 2/10*V12 + (1 - 2); V23 = 2/30*V23 + (1 - 2); V34 = 2/40*V34 + (1 - 2); V45 = 2/50*V45 + (1 - 2); V21 = 2/10*V21 + (1 - 2); V32 = 2/30*V32 + (1 - 2); V43 = 2/40*V43 + (1 - 2); V54 = 2/50*V54 + (1 - 2); A12 = 2/(85-60)*A12 + (1 - 2/(85-60)*85); A23 = 2/(80-50)*A23 + (1 - 2/(80-50)*80); A34 = 2/(80-50)*A34 + (1 - 2/(80-50)*80); A45 = 2/(75-45)*A45 + (1 - 2/(75-45)*75); A21 = 2/(87-60)*A21 + (1 - 2/(87-60)*87); A32 = 2/(85-55)*A32 + (1 - 2/(85-55)*85); A43 = 2/(80-50)*A43 + (1 - 2/(80-50)*80); A54 = 2/(75-45)*A54 + (1 - 2/(75-45)*75); % Variable Mapping x0 = [GR1 GR2 GR3 GR4 GR5 V12 V23 V34 V45 V21 V32 V43 V54 A12 A23 A34 A45 A21 A32 A43 A54]'; % cycle length t = 400; % Constraints % Non Equality A = [zeros(1,5) 1*(10/2) -1*(30/2) zeros(1,14) zeros(1,6) 1*(30/2) -1*(40/2) zeros(1,13) zeros(1,7) 1*(40/2) -1*(50/2) zeros(1,12) zeros(1,5) -1*(10/2) zeros(1,3) 1*(10/2) zeros(1,11) zeros(1,5) -0.85*(10/2) zeros(1,3) 1*(10/2) zeros(1,11) zeros(1,6) -1*(30/2) zeros(1,3) 1*(30/2) zeros(1,10) zeros(1,6) -0.85*(30/2) zeros(1,3) 1*(30/2) zeros(1,10) zeros(1,7) -1*(40/2) zeros(1,3) 1*(40/2) zeros(1,9)

144  

zeros(1,8) -1*(50/2) zeros(1,3) 1*(50/2) zeros(1,8) zeros(1,9) 1*(10/2) -1*(30/2) zeros(1,10) zeros(1,10) 1*(30/2) -1*(40/2) zeros(1,9) zeros(1,11) 1*(40/2) -1*(50/2) zeros(1,8) zeros(1,7) 1*(40/2) zeros(1,3) -1*(40/2) zeros(1,9) zeros(1,8) 1*(50/2) zeros(1,3) -1*(50/2) zeros(1,8) -1*((5 - 4)/2) 1*((3.5 - 2.6)/2) zeros(1,19) 0 -1*((3.5 - 2.6)/2) 1*(2/(2.4 - 1.5)) zeros(1,18) zeros(1,2) -1*((2.4 - 1.5)/2) 1*(2/(1.6 - 1)) zeros(1,17) zeros(1,3) -1*(2/(1.6 - 1)) 1*(2/(1.2 - 0.8)) zeros(1,16)]; b = [-2 - (10 - 10/2) + (30 - 30/2) -2 - (30 - 30/2) + (40 - 40/2) -2 - (40 - 40/2) + (50 - 50/2) -2 + (10 - 10/2) - (10 - 10/2) 0 + 0.85*(10 - 10/2) - (10 - 10/2) -3 + (30 - 30/2) - (30 - 30/2) 0 + 0.85*(30 - 30/2) - (30 - 30/2) -4 + (40 - 40/2)- (40 - 40/2) -4 + (50 - 50/2) - (50 - 50/2) -1 - (10 - 10/2) + (30 - 30/2) -1 - (30 - 30/2) + (40 - 40/2) -1 - (40 - 40/2) + (50 - 50/2) -8 - (40 - 40/2) + (40 - 40/2) -8 - (50 - 50/2) + (50 - 50/2) 0 + (5 - (5 - 4)/2) - (3.5 - (3.5 - 2.6)/2) 0 + (3.5 - (3.5 - 2.6)/2) - (1 - 2/(2.4 - 1.5)*2.4) 0 + (1 - 2/(2.4 - 1.5)*2.4) - (1 - 2/(1.6 - 1)*1.6) 0 + (1 - 2/(1.6 - 1)*1.6) - (1.2 - (1.2 - 0.8)/2)]; % Equality Aeq = []; beq = []; % Bounds lb = -1*ones(21,1); ub = ones(21,1); % Optimization options options = optimset('Display','iter','LargeScale','off','MaxIter',1,'TolFun',1e-2,'TolX',1e-3); % Optimization x = fmincon(@(x) fun_model(x,t),x0,A,b,Aeq,beq,lb,ub,@nonlincon,options); % Mapping variables GR1 = x(1); GR2 = x(2); GR3 = x(3); GR4 = x(4); GR5 = x(5); V12 = x(6);

145  

V23 = x(7); V34 = x(8); V45 = x(9); V21 = x(10); V32 = x(11); V43 = x(12); V54 = x(13); A12 = x(14); A23 = x(15); A34 = x(16); A45 = x(17); A21 = x(18); A32 = x(19); A43 = x(20); A54 = x(21); % Unnormalizing of variables GR1 = (5 - 4)/2*GR1 + (5 - (5 - 4)/2); GR2 = (3.5 - 2.6)/2*GR2 + (3.5 - (3.5 - 2.6)/2); GR3 = (2.4 - 1.5)/2*GR3 + (2.4 - (2.4 - 1.5)/2); GR4 = (1.6 - 1)/2*GR4 + (1.6 - (1.6 - 1)/2); GR5 = (1.2 - 0.8)/2*GR5 + (1.2 - (1.2 - 0.8)/2); V12 = 10/2*V12 + (10 - 10/2); V23 = 30/2*V23 + (30 - 30/2); V34 = 40/2*V34 + (40 - 40/2); V45 = 50/2*V45 + (50 - 50/2); V21 = 10/2*V21 + (10 - 10/2); V32 = 30/2*V32 + (30 - 30/2); V43 = 40/2*V43 + (40 - 40/2); V54 = 50/2*V54 + (50 - 50/2); A12 = (85-60)/2*A12 + (85 - (85-60)/2); A23 = (80-50)/2*A23 + (80 - (80-50)/2); A34 = (80-50)/2*A34 + (80 - (80-50)/2); A45 = (75-45)/2*A45 + (75 - (75-45)/2); A21 = (87-60)/2*A21 + (87 - (87-60)/2); A32 = (85-55)/2*A32 + (85 - (85-55)/2); A43 = (80-50)/2*A43 + (80 - (80-50)/2); A54 = (75-45)/2*A54 + (75 - (75-45)/2);

2. Optimzation function 

% Optimization function % called by FMINCON routine function f = fun_model(x, t) % Initialization of parameters me555_init; % Mapping variables GR1 = x(1);

146  

GR2 = x(2); GR3 = x(3); GR4 = x(4); GR5 = x(5); V12 = x(6); V23 = x(7); V34 = x(8); V45 = x(9); V21 = x(10); V32 = x(11); V43 = x(12); V54 = x(13); A12 = x(14); A23 = x(15); A34 = x(16); A45 = x(17); A21 = x(18); A32 = x(19); A43 = x(20); A54 = x(21); % Unnormalizing of variables GR1 = (5 - 4)/2*GR1 + (5 - (5 - 4)/2); GR2 = (3.5 - 2.6)/2*GR2 + (3.5 - (3.5 - 2.6)/2); GR3 = (2.4 - 1.5)/2*GR3 + (2.4 - (2.4 - 1.5)/2); GR4 = (1.6 - 1)/2*GR4 + (1.6 - (1.6 - 1)/2); GR5 = (1.2 - 0.8)/2*GR5 + (1.2 - (1.2 - 0.8)/2); V12 = 10/2*V12 + (10 - 10/2); V23 = 30/2*V23 + (30 - 30/2); V34 = 40/2*V34 + (40 - 40/2); V45 = 50/2*V45 + (50 - 50/2); V21 = 10/2*V21 + (10 - 10/2); V32 = 30/2*V32 + (30 - 30/2); V43 = 40/2*V43 + (40 - 40/2); V54 = 50/2*V54 + (50 - 50/2); A12 = (85-60)/2*A12 + (85 - (85-60)/2); A23 = (80-50)/2*A23 + (80 - (80-50)/2); A34 = (80-50)/2*A34 + (80 - (80-50)/2); A45 = (75-45)/2*A45 + (75 - (75-45)/2); A21 = (87-60)/2*A21 + (87 - (87-60)/2); A32 = (85-55)/2*A32 + (85 - (85-55)/2); A43 = (80-50)/2*A43 + (80 - (80-50)/2); A54 = (75-45)/2*A54 + (75 - (75-45)/2); %Shift Logic shift_logic; % Simulation options myopts = simset('DstWorkspace', 'current', 'SrcWorkspace', 'current'); % Model Evaluation sim('ME555_model_2006a',t,myopts); % objective calculation cyc_time=t*10;

147  

cyc_miles=distan(cyc_time); fuel_gallon=fuel_cons(cyc_time,2)/2.8012; milespergallon = cyc_miles / fuel_gallon; f = -milespergallon;

3. Nonlinear constraints 

% non linear constraints function [c,ceq] = nonlincon(x) % Initialization of parameters me555_init; % Mapping variables GR1 = x(1); GR2 = x(2); GR3 = x(3); GR4 = x(4); GR5 = x(5); V12 = x(6); V23 = x(7); V34 = x(8); V45 = x(9); V21 = x(10); V32 = x(11); V43 = x(12); V54 = x(13); A12 = x(14); A23 = x(15); A34 = x(16); A45 = x(17); A21 = x(18); A32 = x(19); A43 = x(20); A54 = x(21); % Unnormalizing of variables GR1 = (5 - 4)/2*GR1 + (5 - (5 - 4)/2); GR2 = (3.5 - 2.6)/2*GR2 + (3.5 - (3.5 - 2.6)/2); GR3 = (2.4 - 1.5)/2*GR3 + (2.4 - (2.4 - 1.5)/2); GR4 = (1.6 - 1)/2*GR4 + (1.6 - (1.6 - 1)/2); GR5 = (1.2 - 0.8)/2*GR5 + (1.2 - (1.2 - 0.8)/2); V12 = 10/2*V12 + (10 - 10/2); V23 = 30/2*V23 + (30 - 30/2); V34 = 40/2*V34 + (40 - 40/2); V45 = 50/2*V45 + (50 - 50/2); V21 = 10/2*V21 + (10 - 10/2); V32 = 30/2*V32 + (30 - 30/2); V43 = 40/2*V43 + (40 - 40/2); V54 = 50/2*V54 + (50 - 50/2);

148  

A12 = (85-60)/2*A12 + (85 - (85-60)/2); A23 = (80-50)/2*A23 + (80 - (80-50)/2); A34 = (80-50)/2*A34 + (80 - (80-50)/2); A45 = (75-45)/2*A45 + (75 - (75-45)/2); A21 = (87-60)/2*A21 + (87 - (87-60)/2); A32 = (85-55)/2*A32 + (85 - (85-55)/2); A43 = (80-50)/2*A43 + (80 - (80-50)/2); A54 = (75-45)/2*A54 + (75 - (75-45)/2); %Shift Logic shift_logic; % Simulation options myopts = simset('DstWorkspace', 'current', 'SrcWorkspace', 'current'); % Acceleration constraint sim('ME555_model_accl_2006a',20,myopts); c = [(100/tan(((85-60)/2*x(14) + (85 - (85-60)/2))*pi/180) + 10/2*x(6) + (10 - 10/2)) - (100/tan(((80-50)/2*x(15) + (80 - (80-50)/2))*pi/180) + 30/2*x(7) + (30 - 30/2)) (100/tan(((80-50)/2*x(15) + (80 - (80-50)/2))*pi/180) + 30/2*x(7) + (30 - 30/2)) - (100/tan(((80-50)/2*x(16) + (80 - (80-50)/2))*pi/180) + 40/2*x(8) + (40 - 40/2)) (100/tan(((80-50)/2*x(16) + (80 - (80-50)/2))*pi/180) + 40/2*x(8) + (40 - 40/2)) - (100/tan(((75-45)/2*x(17) + (75 - (75-45)/2))*pi/180) + 50/2*x(9) + (50 - 50/2)) (100/tan(((87-60)/2*x(18) + (87 - (87-60)/2)*pi/180)) + 10/2*x(10) + (10 - 10/2)) - (100/tan(((85-55)/2*x(19) + (85 - (85-55)/2))*pi/180) + 30/2*x(11) + (30 - 30/2)) (100/tan(((85-55)/2*x(19) + (85 - (85-55)/2)*pi/180)) + 30/2*x(11) + (30 - 30/2)) - (100/tan(((80-50)/2*x(20) + (80 - (80-50)/2))*pi/180) + 40/2*x(12) + (40 - 40/2)) (100/tan(((80-50)/2*x(20) + (80 - (80-50)/2))*pi/180) + 40/2*x(12) + (40 - 40/2)) - (100/tan(((75-45)/2*x(21) + (75 - (75-45)/2))*pi/180) + 50/2*x(13) + (50 - 50/2)) time(end) - 9]; ceq = [];

 

Parametric study 

% Parametric study clc clear % Initial Condition GR1 = 4.856; GR2 = 2.931;

149  

GR3 = 1.709; GR4 = 1.1298; GR5 = 0.8813; V12 = 6.1093; V23 = 25.6515; V34 = 33.6112; V45 = 42.6825; V21 = 0.8362; V32 = 9.1855; V43 = 11.348; V54 = 11.94; A12 = 75.4871; A23 = 59.3; A34 = 60.4513; A45 = 63.4356; A21 = 76.8998; A32 = 73.964; A43 = 69.2; A54 = 63.855; % Normalize Varibales GR1 = 2/(5 - 4)*GR1 + (1 - 2/(5 - 4)*5); GR2 = 2/(3.5 - 2.6)*GR2 + (1 - 2/(3.5 - 2.6)*3.5); GR3 = 2/(2.4 - 1.5)*GR3 + (1 - 2/(2.4 - 1.5)*2.4); GR4 = 2/(1.6 - 1)*GR4 + (1 - 2/(1.6 - 1)*1.6); GR5 = 2/(1.2 - 0.8)*GR5 + (1 - 2/(1.2 - 0.8)*1.2); V12 = 2/10*V12 + (1 - 2); V23 = 2/30*V23 + (1 - 2); V34 = 2/40*V34 + (1 - 2); V45 = 2/50*V45 + (1 - 2); V21 = 2/10*V21 + (1 - 2); V32 = 2/30*V32 + (1 - 2); V43 = 2/40*V43 + (1 - 2); V54 = 2/50*V54 + (1 - 2); A12 = 2/(85-60)*A12 + (1 - 2/(85-60)*85); A23 = 2/(80-50)*A23 + (1 - 2/(80-50)*80); A34 = 2/(80-50)*A34 + (1 - 2/(80-50)*80); A45 = 2/(75-45)*A45 + (1 - 2/(75-45)*75); A21 = 2/(87-60)*A21 + (1 - 2/(87-60)*87); A32 = 2/(85-55)*A32 + (1 - 2/(85-55)*85); A43 = 2/(80-50)*A43 + (1 - 2/(80-50)*80); A54 = 2/(75-45)*A54 + (1 - 2/(75-45)*75); % Variable Mapping x0 = [GR1 GR2 GR3 GR4 GR5 V12 V23 V34 V45 V21 V32 V43 V54 A12 A23 A34 A45 A21 A32 A43 A54]'; x0_name = ['GR1';'GR2';'GR3';'GR4';'GR5';'V12';'V23';'V34';'V45';'V21';'V32';'V43';'V54';'A12';'A23';'A34';'A45';'A21';'A32';'A43';'A54'];

150  

parameter = -1:.4:1; f = zeros(length(x0),length(parameter)); for i = 1:length(x0) for j = 1:length(parameter) x = x0; x(i) = parameter(j); % function evaluation f(i,j) = -fun_model(x,400); end figure(i), plot(parameter,f(i,:)); figure(i),ylabel('Objective, Fuel Economy (mpg)'); figure(i),xlabel(['Normalized Parameter ', x0_name(i,:)]); name = ['parametric_study_', x0_name(i,:)]; saveas(i,name,'fig'); close(i); end save parametric_study.mat parameter f;  

 

 

 

 

 

 

 

 

 

 

151  

Structural Analysis of Transmission Shafts (Girish Chandra)

(In the macro below, the inner radii are represented by Dii. This was considered because the Finite Element package ANSYS is not case sensitive.)

clear all;

close all;

clc;

%Parametric inputs

l12 = 0.2;

l22 = 0.4;

l32 = 0.6;

l42 = 0.8;

l13 = 0.225;

l23 = 0.45;

l14 = 0.3;

l24 = 0.4;

A2 = 1.75;

C2 = 2;

% Initial Values of the Variables

D1 = 1.1000000000000e-001;

D2 = 1.1000000000000e-001;

D3 = 1.1000000000000e-001;

D4 = 1.1000000000000e-001;

D11 = 9.0000000000000e-002;

D22 = 9.0000000000000e-002;

D33 = 9.0000000000000e-002;

152  

D44 = 9.0000000000000e-002;

f2 = 4.1664484300000e+002;

f3 = 9.3095455000000e+002;

%Moments and Torque inputs on different Shafts

% Shaft 1

Ma = 0.7875 - 0.0254*(D1^2 - D11^2);

Mb = 0.875 - 0.05*(D1^2 - D11^2);

Mc = 0.5122 - 0.17*(D1^2 - D11^2);

k1 = [Ma, Mb, Mc];

M1 = max(k1);

T1 = 400;

% Shaft 2

B2 = 2.75 + 0.4942*(D2^2-D22^2);

R22 = 3.3125 + 0.2471*(D2^2-D22^2);

R12 = 3.1875 + 0.2471*(D2^2-D22^2);

MA2 = R12 * l12;

MB2 = R12*l22 - A2*(l22-l12);

MC2 = R12*l32 - A2*(l32-l42) - B2*(l32-l22) ;

k2 = [MA2, MB2, MC2];

M2 = max(k2);

T2 = T1/4;

% Shaft 3

A3 = 1.25 + 0.2781*(D3^2-D33^2);

R23 = A3/2;

R13 = A3/2;

M3 = R13 * 0.225;

153  

T3 = T1;

% Shaft 4

A4 = 2 + 0.2472*(D4^2-D44^2);

R24 = 3*A4/4;

R14 = A4/4;

M4 = R14*0.3;

T4 = 150;

% Objective funtion and Constraints (in negative null form)

w = 4944.86*(D1^2-D11^2) + 4944.86*(D2^2-D22^2) + 2781.48*(D3^2-D33^2) + 2472.433*(D4^2-D44^2);

g1 = 30.57*((5.3127*10^(-9)*M1)^2 + 0.75*(3.81*10^(-9)*T1)^2)^0.5 - (D1^4-D11^4)/D1;

g2 = 0.001+D11-D1;

g3 = 30.57*((5.3127*10^(-9)*M2)^2 + 0.75*(3.81*10^(-9)*T2)^2)^0.5 - (D2^4-D22^4)/D2;

g4 = 0.001+D22-D2;

g5 = 30.57*((5.3127*10^(-9)*M3)^2 + 0.75*(3.81*10^(-9)*T3)^2)^0.5 - (D3^4-D33^4)/D3;

g6 = 0.001+D33-D3;

g7 = 30.57*((5.3127*10^(-9)*M4)^2 + 0.75*(3.81*10^(-9)*T4)^2)^0.5 - (D4^4-D44^4)/D4;

g8 = 0.001+D44-D4;

g9 = f2-405;

g10 = 380-f2;

g11 = f3-970;

g12 = 945-f3;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

fname = 'Opt_out.txt';

fid = fopen(fname,'w');

154  

fprintf (fid,'This is the output file \n');

fprintf (fid,'The following results are generated \n');

fprintf (fid,'The values of the outputs are: \n\n');

fprintf (fid,'w = %f \n\n', w);

fprintf (fid,'g1 = %f\n', g1);

fprintf (fid,'g2 = %f\n', g2);

fprintf (fid,'g3 = %f\n', g3);

fprintf (fid,'g4 = %f\n', g4);

fprintf (fid,'g5 = %f\n', g5);

fprintf (fid,'g6 = %f\n', g6);

fprintf (fid,'g7 = %f\n', g7);

fprintf (fid,'g8 = %f\n', g8);

fprintf (fid,'g9 = %f\n', g9);

fprintf (fid,'g10 = %f\n', g10);

fprintf (fid,'g11 = %f\n', g11);

fprintf (fid,'g12 = %f\n', g12);

fclose(fid);

Below is the ANSYS macro for finding the modal frequencies:

D1 = 1.1000000000000e‐001 

D2 = 1.1000000000000e‐001 

D3 = 1.1000000000000e‐001 

D4 = 1.1000000000000e‐001 

D11 = 9.0000000000000e‐002 

D22 = 9.0000000000000e‐002 

D33 = 9.0000000000000e‐002 

D44 = 9.0000000000000e‐002 

155  

 

/PREP7   

!*   

ET,1,BEAM188 

!*   

ET,2,MASS21  

!*   

!*   

R,1, ,4.073, ,0.026, , , 

!*   

!*   

R,2, ,9.506, ,0.113, , , 

!*   

!*   

R,3, ,7.408, ,0.1387, , ,    

!*   

!*   

MPTEMP,,,,,,,,   

MPTEMP,1,0   

MPDATA,EX,1,,2e11    

MPDATA,PRXY,1,,0.3   

MPTEMP,,,,,,,,   

MPTEMP,1,0   

MPDATA,DENS,1,,7860  

!*   

SECTYPE,   1, BEAM, CTUBE, , 0   

SECOFFSET, CENT 

156  

SECDATA,D22/2,D2/2,0,0,0,0,0,0,0,0   

k,   

k,2,.2   

k,3,.4   

k,4,.6   

k,5,.8   

l,1,2    

l,2,3    

l,3,4    

l,4,5    

CM,_Y,KP 

KSEL, , , ,       2  

CM,_Y1,KP    

CMSEL,S,_Y   

!*   

CMSEL,S,_Y1  

KATT,       1,       1,   2,       0 

CMSEL,S,_Y   

CMDELE,_Y    

CMDELE,_Y1   

!*   

CM,_Y,KP 

KSEL, , , ,       3  

CM,_Y1,KP    

CMSEL,S,_Y   

!*   

CMSEL,S,_Y1  

157  

KATT,       1,       2,   2,       0 

CMSEL,S,_Y   

CMDELE,_Y    

CMDELE,_Y1   

!*   

CM,_Y,KP 

KSEL, , , ,       4  

CM,_Y1,KP    

CMSEL,S,_Y   

!*   

CMSEL,S,_Y1  

KATT,       1,       3,   2,       0 

CMSEL,S,_Y   

CMDELE,_Y    

CMDELE,_Y1   

!*   

FLST,5,4,4,ORDE,2    

FITEM,5,1    

FITEM,5,‐4   

CM,_Y,LINE   

LSEL, , , ,P51X  

CM,_Y1,LINE  

CMSEL,S,_Y   

!*   

!*   

CMSEL,S,_Y1  

LATT,1,1,1, , , ,1   

158  

CMSEL,S,_Y   

CMDELE,_Y    

CMDELE,_Y1   

!*   

FLST,5,4,4,ORDE,2    

FITEM,5,1    

FITEM,5,‐4   

CM,_Y,LINE   

LSEL, , , ,P51X  

CM,_Y1,LINE  

CMSEL,,_Y    

!*   

LESIZE,_Y1, , ,10, , , , ,1  

!*   

FLST,2,4,4,ORDE,2    

FITEM,2,1    

FITEM,2,‐4   

LMESH,P51X   

KMESH,       2   

KMESH,       3   

KMESH,       4   

!*   

ANTYPE,2 

!*   

!*   

MODOPT,LANB,5    

EQSLV,SPAR   

159  

MXPAND,5, , ,1   

LUMPM,0  

PSTRES,0 

!*   

MODOPT,LANB,5,1,0, ,OFF  

ACEL,0,‐9.81,0,  

FLST,2,1,1,ORDE,1    

FITEM,2,1    

!*   

/GO  

D,P51X, , , , , ,UX,UY,UZ, , ,   

FLST,2,1,1,ORDE,1    

FITEM,2,32   

!*   

/GO  

D,P51X, , , , , ,UX,UY,UZ, , ,   

FLST,2,1,1,ORDE,1    

FITEM,2,32   

DDELE,P51X,ALL   

FLST,2,1,1,ORDE,1    

FITEM,2,32   

!*   

/GO  

D,P51X, , , , , ,UY,UZ, , , ,    

FINISH   

/SOL 

/STATUS,SOLU 

160  

SOLVE 

! **************************************************** Writing Result File 

!*   

*GET,FREQ_1,MODE,1,FREQ  

!*   

*GET,FREQ_2,MODE,2,FREQ  

!*   

*GET,FREQ_3,MODE,3,FREQ  

!*   

*GET,FREQ_4,MODE,4,FREQ  

!*   

*GET,FREQ_5,MODE,5,FREQ  

!*   

*CREATE,ansuitmp 

*CFOPEN,'s2_results','txt','N:\Ansys'    

*VWRITE,FREQ_1,FREQ_2,FREQ_3,FREQ_4,FREQ_5, , , , ,  

(F7.3)  

*CFCLOS  

*END 

/INPUT,ansuitmp  

!*