►
From YouTube: SimPEG meeting Oct 23
Description
Catching up on SEG conversations and usage of SimPEG beyond UBC
A
B
That
should
be,
hopefully
pretty
straightforward.
Okay,
sorry
so
you're
just
saying:
there's
a
few
things
to
go
over
so
s,
e-g,
stuff,
dieter
sent
along
some
cool,
plotting
utility
code,
so
I'll
demo
that
and
I
think
it
like
he's,
got
the
floor.
Crust
ready,
so
I
think
it's
like
almost
ready
to
go.
B
C
D
B
Side
of
things
they
serious
heavily
and
they've
gone
in
and
they've
got
their
own
sort
of
internal
branch
right
now,
where
they've
gone
ended,
made
a
whole
bunch
of
modifications.
I've
done
some
work
in
terms
of
speed
up
and
so
had
a
really
good
chat
with
their
new
CTO
and
so
I'm
going
to
follow
up
with
him.
He
seemed
quite
receptive
to
at
least
having
a
conversation
about
what
they
did
biggest
improvements
and
things
like
that.
I.
B
E
B
I
think
there's
actually
a
fair
bit
of
motivation
for
them
to
do
that,
because
I
told
them
that
we're
gonna
be
working
on
improvements
and
all
of
that
sore
stuff
and
some
structural
changes
and
so
like.
If
they're
off
on
their
own
private
branch,
it's
gonna
get
wet,
it's
Rob,
yeah,
so
I
think
there's
actually
some
pretty
significant
motivation
for
them
to
sort
of
stay
tied
in
to
the
ecosystem,
which
is
really
cool,
I
mean
I,
had
also
a
good
chat
with
Nestor
who
I
worked
with
when
I
was
at
Schlumberger.
B
That
first
summer,
he's
been
doing
a
whole
bunch
of
casing
stuff,
and
he
is
very
much
like
a
mathematical
physicist,
so
he
likes
to
derive
derived
things
and
do
all
the
integrals
and
the
complex
plane
and
all
that
stuff,
and
so
he's
got
a
solution
that
he
wants
to
actually
test
out
against
simple
for
anisotropic
backgrounds,
we'll
be
in
touch
with
him,
which
is
kind
of
cool.
So
it's.
C
C
C
C
D
C
G
C
C
C
Somebody
so
also
me,
like
like
say
right
over
the
PD
like
more
like
it's
a
scary
way
when
we
use
gradient,
etc,
and
for
then
there
was
a
big.
Oh
we
don't.
That
was
a
gradient
of
the
divergence
lecture.
If
I
think
last
night
so
became
some
sort
of
a
priority
on
the
collection
for
the
locking.
We
need
to
peridot
very,
not
only
doing
skaters
own,
so.
E
E
C
I
D
A
C
B
B
So,
like
obviously,
there's
lots
that
can
be
done
in
terms
of
making
sure
we're
evaluating
on.
You
know,
edges
and
things
like
that.
I
like
doing
things
in
their
stuff
to
improve
their,
but
overall,
it's
nice
to
see
that
our
forward
3d
simulation
agrees
with
independently
developed
1d
port
simulation.
That
takes
a
different
approach,
and
so
this
is
something
that
he's
been
that
he's
worked
on
for
to
get
where
he
first
implemented
this.
B
I
B
Okay,
that's
cool!
So
this
we're
gonna,
look
at
crates.
Inversion!
Results
dear
introduced
me
to
shelves.
So
this
is
something
I
want
to
look
into
I
guess
it's
like
a
new
iteration
on
pickled.
So
if
something
just
to
check
out
I,
don't
actually
know
how
it
works
yet.
So
this
is
the
the
slicer.
So
it's
a
method
on
the
lead
mesh
class.
This
is
there
cancer
mesh
and
the
LP
out.
That's
just
the
model.
B
A
A
B
It's
pretty
slick
so
that
started
the
standard
and
then
he's
gone
in
and
there's
a
few
other
things
that
you
can
set.
So
here
he
set
where
the
initial
slice
slice,
art
and
then
he's
also
set
bounds
for
where
it's
transparent,
that's
cool
and
then
all
of
the
pea
color
options
are
also
hooked
up.
So
if
you
want
to
plot
the
mesh
on
top
or
use
like
a
log
norm
in
a
different
color
scale,
that
is
all
in
there
and
then
here.
B
This
is
also
just
giving
you
an
idea
of
how
the
slicer
is
working.
So
if,
instead
of
calling
it
as
a
method
on
the
mesh
class,
you
just
want
to
construct
its.
You
can
do
that
so
here
he
creates
this
tracker
from
the
slicer,
which
is
what
is
being
called
under
the
hood
with
the
mesh
and
the
output
or
the
the
model.
And
then
here
it's
just
the
map
plot
live
tracker
that
you
have
to
connect
to
this
scroll
bar.
That's,
so
you
can
probably
connect
it
to
arrows
or
whatever
else.
B
J
I
B
B
A
B
B
B
B
A
B
Might
be
tricky
to
dynamically
resize
the
plot,
but
we
can
try
because
I
like
when
we
do
stuff
with
interact,
for
example,
we're
actually
redrawing
the
figure
like
with
the
slide
bars
here.
I,
don't
believe,
that's
what's
actually
happening,
so
there
would
have
to
be
actually
there
would
have
to
be
like
an
event
handler.
Basically
that
watches
accuser
and
then
changes
changes
scales.
B
B
A
B
A
B
Did
you
change
anywhere?
The
cross-sections
are
just
scrolling
so
if
I
had
mouse
over
this
live
site,
so
if
I
mouse
over
this
and
I'm
just
scrolling
with
my
scroll
bar
okay
I'll
have
that
changes
whatever
panel?
My
mouse
is
active
on.
So,
if
I'm
on
this
one
right
here,
the
big
one,
it
doesn't
change
my
Z
index.
Oh
nice,
okay,
yeah,
that's.
B
A
E
B
B
So
that's
that
the
other
I
can
get
just
a
very
quick
overview
of
some
things
that
are
coming
in
so
in
simp,
a
there's,
a
few
pull
requests
on
the
go
and
I
actually
would
appreciate
if
people
could
take
a
quick
look
back
at
some
of
these
pull
requests
that
have
things
open
for
quite
a
while
and
if
the
changes
are
still
relevant.
There's
a
lot
of
merge
conflicts
and
things
like
that.
So
just
go
through
that.
It's
not,
then
you
can
just
close
the
flow
request.
B
There's
some
that
I
think
have
been
surpassed
by
developments
elsewhere,
but
I
don't
have
the
picture
it's
up
to
no
one
that
I'm
working
on
and
I'll
go
through
and
make
a
few
more
comments
before
I
jump
in
and
ask
people
for
review,
but
I
added
electric
fields,
data
to
the
DC
problem,
because
when
I
was
comparing
or
like
for
my
thesis,
I
was
thinking
both
about
DC
and
e/m.
So
it's
like
it's
just
easier
to
look
at
electric
field
data
all
the
way
through
so
I
added
those
derivatives.
B
I
also
added
charge
density
throughout
because
when
you're
actually
plotting
like
charge
depends
on
the
size
of
your
mesh,
and
so
you
don't
actually
want
to
necessarily
be
showing
that,
in
all
cases,
so
charge
density,
I
added
for
the
directives
just
were
the
ones
where
we're
saving
models
and
outputs
I
added
the
option
to
actually
like
save
it
into
a
directory,
rather
than
your
current
working
directory.
So
you
can
change
like
cuz.
B
B
D
A
B
You
have
an
example:
that'd
be
awesome.
I
created
some
tests,
so
you
can
sort
of
look
at
that
yeah,
but
I'm
also
happy
to
bring
them
in.
If
you
don't
have
one
handy.
A
B
A
A
A
A
B
B
E
H
E
The
client
or
whatever
workers
so
can
import
desc
I.
Think
actually,
if
you
just
say
in
self
Conda,
it's
a
base
package,
so
it's
already
probably
the
stall.
So
you
can
run
it
and
then
you
can
put
the
number
of
workers,
so
I
have
four
cords,
so
it
can
fit.
Four
and
man
can
also
say
like
a
number
of
thread
per
workers,
because
that
it's
sometimes
it's
a
bottleneck,
if
you
think
about
the
Pegman
solver
or
pretty
so
it
actually
used
to
the
maximum
friends.
So
you
need
to
be
careful
when
you're
like
a
paralyzing.
E
D
E
So
it
one
it's
actually
same
problem
for
your
running
the
UPC
codes.
We
need
to
be
careful
with,
like
I,
said
of
this
raft
when
you're
doing
paralyzation
anyway.
So
that's
how
it
looks
like
and
it'll
show
you
ok.
What's
the
system
look
like
what's
actually
nice
about
here
and
you
clear
this
guy
and
you
can
see
sort
of
it
put
like
it
does
the
profiling,
which
is
actually
nice,
so
you
can
actually
kind
of
check
how
you're
doing
it,
and
this
is
sort
of
a
simple
example.
I'm
thinking.
D
E
E
Of
conversation
with
each
lines,
so
it's
completely
separate,
so
it's
what
they
call
embarrassingly
paralyzed
problem,
which
is
like
the
simplest
case.
So
if
you
take
like
your
CV
function,
looks
like
so
it
takes
the
survey
function.
So
what
it
does
it
takes
that
parameters
and
choose
dot
equal
level,
whatever
gender
ski
survey,
so
by
changing
the?
Why
not
it'll
change
the
location
of
July
and
then
I
got
master
function.
E
So
this
is
the
applicant
thumb
road
there
for
a
free
code
and
then
yeah
I'm
not
going
to
go
to
the
details,
but
I
think
you
need
to
refine
in
multiple
steps.
So
I
think
this
is
sort
of
that
like
that
optimize
for
honor,
that
I
found
for
working
for
TC
anyway.
So
then
they're
gonna
generate
the
problem
of
DC
mappings
problem
and
then
jettison
that,
via
and
after
that,
I
went
through
stacking
right,
so
I
want
to
run
in
parallel
in
parallel.
Let's
take
it.
E
So
that's
how
it
looks
like
say,
say:
I
got
twenty
lines
and
this
is
actually.
There
are
multiple
ways,
but
I
think
this
is
the
simplest
way
and
that's
X
very
similar
to
multi
policy,
so
what
it
does
at
clamped
map.
So
that's
like
it's
actually
mapping
your
function
to
all
the
workers,
so
okay
got
DC
simulation
and
I
need
to
put
the
inputs,
so
input
can
be
a
raise
or
whatever.
So
whether
you
need
to
kind
of
make
it
multiple,
so
I'm,
just
making
a
two
pole,
which
is
my
arguments.
E
Then
this
is
actually
the
important
steps
of
futures
doesn't
do
anything,
but
so
it's
actually
fast.
It's
not
that
yet.
So
what
feature
does
it
actually
generates
all
the
trees,
whether
it's
a
poster
its
plants?
So
it
doesn't
like
that's
why
it
called
futures
it
in
the
future.
We're
gonna
do
something,
but
it's
not
done
yet,
and
this
is
actually
important
stuff.
E
If
you,
if
you
have
a
enough
memory
to
load
everything
up
to
your
memory,
then
that's
like
that's
what
it
does
persist,
actually
use
the
like
all
the
things
into
the
memory,
otherwise
I
think
I'm
not
exactly
sure,
what's
happening,
but
it
it.
Actually,
it
wants
to
be
memory
efficient,
so
that's
gonna,
you're
gonna
lose
your
speed,
which
you
may
not
want
to
do
so.
I
think
most
of
our
cases,
I
think
that's.
E
E
D
E
E
H
E
E
E
Team
in
class
and
then
kind
of
play
with
it,
but
this
is
a
sort
of
syphilis.
Okay,
I'm
I,
don't
care
I
kind
of
I,
don't
want
to
change
whole
bunch
of
other
parts
of
my
code
and
I
know.
This
is
actually
where
I
need
the
parallelization,
then
yeah,
that's
it.
So
you
just
need
to
have
a
run
simulation
and
generate
a
function
like
that.
Can
output
the
arguments
and
then
loop
over
and
load
it
up
to
memory,
gather
it
at
the
research.
That's
it
so
sensitivity.
D
E
Basically
saying
in
this
case,
so
if
you
have
a
fungal
okay,
this
is
actually
assuming
when
you're
generating
the
sensitivity.
So
we
got
a
small
enough
problem.
Then
do
the
same
thing:
I
have
a
function
rustling
relation
for
me.
It
does
actually
want
that
coordinate
sensitivity,
computation.
So,
like
yeah,
it's
basically
saying
that
you
store
that
into
a
matrix,
so
yeah
I
think
so
I,
like
kind
of
paralyzing.
That
loop
is
actually
really
simple.
E
B
E
Can
ask
me
to
a
for
loop
yeah
to
January,
so
that
then
that
was
more
like
a
fewer
lives
yeah,
but
you
can
actually
generate
the
for
loop,
so
I
think
there
was
like
maybe
a
few
times
what
you
need
to.
Did
you
just
say
to
append
yeah
this
generated
some
sort
of
like
a
placeholder
and
that
yeah
they're.
D
B
E
B
I
E
B
E
Right,
I
think
that's
probably
the
level
I
think
in
this
case
cuz
like
it's
not
quite
proper
for
like
it,
because
lots
of
problems
like
butts
they've
got
10,000
from
under
got
the
problem,
I'm,
not
sure
like
penalizing
in
that
level.
It's
actually
better
I,
don't
know
what
do
you
mean
so
yeah?
Let's
say
you
got
objective
function
like
that
I'm
not
sure
like.
If
you
got,
let
me
say
10000
sources
and
then
I
don't
know,
went
to
paradise
it
for
each
of
them
yeah
and
I.
E
B
E
E
Because
I
think
this
is
actually
very
simple
case,
but
that,
like
there
could
be
pretty
involved
parallelization
but
really
tangle
together,
then
I
mean,
like
then,
I
think,
there's
kind
of
two
levels
of
it.
Okay,
like
that
problem,
had
a
parallelization,
then
another
level
can
go
to
the
joint
conversion
or
whatever,
like
multiple
information,
then
there's
a
level
of
like
very
simple
paralyzation
like
this
have
a
different
level
more
after
example
of
parallelization
yeah.
B
But
I
do
think
that
the
objective
function-
realization
look
at
us
like
eighty
percent-
will
hit
80
percent
of
the
cases
that
were
interested
in
right
now.
It's
not
gonna
hit
parallelizing
like
an
airborne
IAM
surveyed,
that's
fair,
but
like
the
example
that
you
just
talked
about
that.
So
if
you've
got
eight
lines
that
that's
a
very
easy
to
do
that
up,
yeah,
so
that's
true
l
know
it
might
not
be
exactly
the
same
type
of
approach
thing
this.
This
will
get
us.
Ninety.
J
B
So
it's
starting
there
and
then
parallelizing
so
luteum
code
and
paralyzing
over
frequencies,
for
example.
What
would
be
the
next
place
that
I
would
go,
but
I
think
that
this
is
like:
let's
try
and
get
it
right
if
the
objective
function
level
first
and
then
it
should
be
easy
to
propagate
further
inside
I.
Think.
A
E
E
Faucet
right
functions
in
compared
to
sensor
mesh,
so
yeah
like
it's
actually
more
generic.
Okay,
now
it's
location,
that's
survey,
then
yeah
it'll
be
able
to
figure
it
out.
You
just
need
to
put
a
right
arguments,
but
D.
That's
that
that's
exciting
part
of
nasty
we
can
have
actually
pretty
small
mesh
compared
to
the
previous
case,
which
is
cool.
So
this
is
kind
of
an
example
of.
E
E
Actually
much
smaller
than
tensor,
because
I
you
can
go
like
pretty
coarse,
I,
think
what
we
need.
It's
actually
listening,
that
close,
like
very
small
selves,
close
to
the
electrodes
and
maybe
a
couple
of
the
layers
and
after
that,
like
we're,
losing
their
eyes
push
him
so
I
can
using
coarse
mesh
I.
Think
it's
actually
fine
and
I.
E
E
Yes,
that's
actually
kind
of
cool
because
the
it's
actual
3d
data
I've,
never
really.
This
is
actually
the
first
time
that
I've
seen
first
3d
like
DVM
I,
just
read:
yeah
yeah,
oh
yeah
yeah,
so
that's
the
electrode
location
and
each
elector
will
keep
like
a
source
has
like
quite
a
bit
of
receivers,
not
all
the
receivers
but
and
that's
the
yeah.
So
we
actually
inverted
the
data
and
it
doesn't.
K
E
What
are
you
doing
through
surface
was
so
surface
wave
is
basically
generating
a
large
value
for
a
couple
of
the
layers
and
then
just
putting
that
into
this
next
time.
So
by
doing
so,
what
you're,
asking
okay
at
this
few
layers,
I
really
want
to
make
it
really
smooth
so
like
your
best
year,
you're
penalizing
this
like
bonded
structures
in
that
surface,
and
that's.
K
What
you
know
usually
know
that
everything
should
be
ready
for
what
well
we
just
I
was
just
working
on
one
too
and
again
it
just
pulls.
It
down
leaks
everything
to
look
at
carriage.
It's
like
there's
no
way
that
that
is,
writing
at
depth
like
it
can
be,
but
again
like
the
stuff
from
near
the
surface
and
the
top
of
stuff.
That's
what
the
client
liked
and
they
kind
of.
K
D
What
what
about
using
the
example
that
you
just
have
done
as
far
as
you
know,
the
topography
and
the
electrode
layout
I
mean
just
keeps
all
of
that
infrastructure
the
same
except
just
change.
You
know
change
the
model
put
in
a
couple
of
things
that
you
might
think
are
geologically
relevant
and
just
a
simple
model
and
then
run
it
through
res
in
3d,
and
we
can
run
through
here.
D
Because
that
wouldn't
then
take
perhaps
so
much
work
on
your
part
to
to
generate
something
because
you've
already
got.
Basically
the
survey
sat
up
and
then
it
also
helps
answer
a
couple
of
questions.
Maybe
with
respect
to
what
you're,
seeing
you
know
with
all
this
topography
and
with
your
particular
survey
just.