8/23/10
CE
311K
Introduc/on
to
Computer
Methods
Daene
McKinney
Introduc1on
[Link]/prof/mckinney/ce311k/[Link]
Introduc)on
• Course
Introduc1on
and
Housekeeping
• Computer
Systems
–
Hardware
and
So<ware
• The
Internet
• Program
Planning
1
8/23/10
Course
Objec)ves
• Introduce
computer
methods
for
the
solu)on
of
civil
engineering
problems,
including:
– Intro
to
computer
hardware
and
opera1ng
systems,
– Organiza1on
of
engineering
problems
for
computer
solu1on,
– Selec1on
of
appropriate
numerical
solu1on
so<ware,
methods,
and
algorithms,
– Elementary
numerical
analysis
of
selected
algorithms,
– Wri1ng,
compiling,
and
execu1ng
Visual
Basic
programs
– Presenta1on
of
problems
and
their
solu1on,
– Use
of
the
WWW
to
communicate
and
retrieve
informa1on
Housekeeping
• Prerequisites
– M408C,
Calculus
I,
Co-‐requisite:
M408D,
Calculus
II
• Text
– Required:
• Schneider,
D.
I.,
An
Introduc1on
to
Programming
Using
Visual
Basic
2008,
2008,
Pren1ce
Hall
• Microso<
Visual
Studio
Express
Edi1on
with
VB2008
(CD
in
back
of
the
text
or
download
from
the
web:
• hXp://[Link]<.com/express/Downloads/#2010-‐Visual-‐Basic
– Strongly
Suggested:
• Chapra,
S.
&
R.
Canale,
Numerical
Methods
for
Engineers
• Homework
– Due
at
beginning
of
lecture,
due
date
on
web
site
– Lab
assignments
due
next
lab
period
– Late
homework
penalized
50%
per
day
late
2
8/23/10
Housekeeping
• Grading
– A
>=
90,
B
>=
80,
C
>=
70,
etc
– Exams:
50%
(2
at
25%
each;
open
book
&
notes)
– Project:
20%
– Laboratory:
20%
– Homework:
10%
• Exams
– 2
exams
– No
makeups
– Dates:
on
web
site
– No
Final
–
Project
Presenta1on
and
Report
Instead
Projects
• Enable
you
to
explore
in-‐depth
some
aspect
of
Civil,
Architectural,
or
Environmental
Engineering
of
interest
to
you
• Provide
experience
in
– use
of
computer
methods
to
solve
engineering
problems
– formula1on,
execu1on
and
presenta1on
of
an
engineering
inves1ga1on
– team
effort
to
produce
a
project,
report
and
presenta1on
that
is
informa1ve
to
you
and
your
classmates
3
8/23/10
Project
Steps
• Students
-‐
sign
up
for
an
area
of
interest
– Architectural
Engineering
(ArE)
–
[Link]/
areareasofprac1ce/[Link]
• Structural
Engineering
• Building
Energy
and
Environments
• Construc1on
Materials
Engineering
– Civil
Engineering
(CE)
–
[Link]/ceareasofprac1ce/
[Link]
• Construc1on
Engineering
and
Project
Management
(CEPM)
• Environmental
Engineering
(ENV)
• Geotechnical
Engineering
(GEO)
• Materials:
Mechanics
and
Construc1on
(MAT)
• Structures
(STR)
• Transporta1on
(TRAN)
• Water
Resources
Engineering
(WR)
Project
Steps
• Instructor
-‐
prepares
teams
in
areas
of
interest
• Teams
– Select
project
topic
in
their
area
and
prepare
proposal
– Work
on
project
in
teams
– Present
final
project
in
class
– Submit
final
report
4
8/23/10
Compu)ng
Systems
• A
computer
is
a
machine
designed
to
perform
opera1ons
specified
with
a
set
of
instruc1ons
called
a
program.
• Hardware
refers
to
the
computer
equipment.
– keyboard,
mouse,
terminal,
hard
disk,
printer
• SoCware
refers
to
the
programs
that
describe
the
steps
we
want
the
computer
to
perform.
Computer
Hardware
Display
Memory
Device
Storage RAM
Device
Output
ALU
Input
• CPU
-‐
Central
processing
unit
Computer
CPU
• ROM
-‐
Read
only
memory
– Power
off,
data
saved
• RAM
-‐
Random
access
memory
– Power
off,
data
lost
5
8/23/10
Computer
Systems
• First
Genera1on
– 1940-‐1950
Vacuum
tubes
• Second
Genera1on
– 1950-‐1964
Transistors
• Third
Genera1on
– 1964-‐1971
Integrated
Circuits
• Fourth
Genera1on
– 1971-‐present
Microprocessors
• Fi<h
Genera1on
– Future
Massively
Parallel
• Cloud
– Current
Internet-‐based
[Link]/definition/History_of_computing_hardware
Computer
SoCware
• Opera1ng
System
– interface
with
the
user
– unix,
windows,
linux,
...
• So<ware
Tools
– word
processors
(Microso<Word,
WordPerfect,
...)
– spreadsheet
programs
(Excel,
Lotus1-‐2-‐3,
...)
– mathema1cal
computa1on
tools
(MATLAB,
MathCAD,
...)
• Computer
Languages
– machine
language
– assembly
language
– binary
language
– high
level
languages
– (C,
C++,
FORTRAN,
VB,
java)
• Web
Applica1ons
Reed Harvard UT Stanford
– Search
engines
– Online
shopping
– VOIP
6
8/23/10
The
Internet
• Interna1onal
computer
network
connec1ng
…everybody
• Computer
networking
and
communica1ons
technology
– i.e.,
wires
and
routers,
those
things
that
connect
computers
– TCP/IP
(Transmission
Control
Protocol/Internet
Protocol)
directs
the
flow
of
data
between
computers
on
the
internet
• The
Internet
allows
you
to
communicate
with
computer
users
around
town
and
around
the
world
World
Wide
Web
(WWW)
• An
open
approach
to
informa1on
sharing
• Providing
a
distributed
“hyper”-‐media
system
to
easily
access
informa1on
spread
across
the
world
• “Hyper”-‐text
– A
way
to
link
and
access
informa1on
of
various
kinds
as
a
web
of
nodes
in
which
a
user
can
browse
at
will
– Opera1on
of
the
Web
relies
on
hypertext
to
interact
with
users
– Enables
you
to
read
and
navigate
informa1on
in
a
nonlinear
way
based
on
what
you
want
to
know
– Browser
-‐
programs
which
provide
access
to
hypertext
docs
on
the
web
• HTML
(Hypertext
Markup
Language)
– Formasng
standard
for
hypertext
documents
7
8/23/10
How
big
is
the
internet?
• 1830
million:
individuals
will
use
the
Internet
in
2010
• >
1
trillion
web
pages
• 5
million
Tera
bytes
of
data
• >
500
million
use
the
Internet
at
least
once
a
week
• Google
Zeitgeist
Search
Queries:
2009
– Fastest
Rising
(Global)
– michael
jackson
– Facebook
– Tuen1
– TwiXer
– Sanalika
– new
moon
– lady
gaga
– windows
7
– [Link]
– torpedo
gra1s
Model
Building
Process
• Problem
iden1fica1on
– Important
elements
to
be
modeled
– Rela1ons
and
interac1ons
between
them
– Degree
of
accuracy
• Conceptualiza1on
and
development
– Mathema1cal
descrip1on
– Type
of
model
– Numerical
method
-‐
computer
code
– Grid,
boundary
&
ini1al
condi1ons
• Calibra1on
– Es1mate
model
parameters
– Model
outputs
compared
with
actual
outputs
– Parameters
adjusted
un1l
the
values
agree
• Verifica1on
– Independent
set
of
input
data
used
– Results
compared
with
measured
outputs
8
8/23/10
Programming
Process
Algorithm Design
(underlying logic of program)
Program Composition
Debug & test
(error free & reliable)
Program Documentation
Program Maintenance
First “Bug”
Grace M. Hopper
AL-KHOWARIZMI
Algorithms
• Example:
– Write
a
leXer.
– To
mail
it,
you
must
decide
how
much
postage
to
put
on
the
envelop.
• Rule
of
Thumb:
One
stamp
for
every
5
sheets
of
paper.
• Algorithm:
Step-‐by-‐Step
procedure
for
solving
a
problem
1. Input
=
Number
of
sheets
of
paper
in
the
leXer
2. Divide
Sheets
by
5.
Round
up
to
the
next
highest
whole
number
3. Output
=
Number
of
Stamps
INPUT Output
Processing
(16) (4)
9
8/23/10
Composing
a
Computer
Program
High-level Low-level Input data
language Language
Source Machine Executable
Compiler language Link/load Output
code module
• Programmer
– Writes
program
in
source
code
(VB
or
other
language)
• Compiler
– Converts
source
code
to
machine
language
code
• Linker
– Combines
machine
language
with
libraries
&
converts
them
to
an
executable
module
• Interpreter
– Converts
source
code
to
machine
language
and
executes
one
line
at
a
1me
6
Elements
of
Programming
• 6
things
you
need
to
• VB
program
in
any
• C,
C++,
C#
language:
• FORTRAN
1. Variables
• Pascal
2. Input/Output
3. Selec1on
• Cobol
4. Subprograms
• Java,
J++
5. Repe11on
• YouNameItLanguage
6. Arrays
10
8/23/10
Summary
• Course
Introduc1on
and
Housekeeping
• Computer
Systems
–
Hardware
and
So<ware
• The
Internet
• Program
Planning
11