Thursday 13 December 2012

PAFEC: Axisymmetric piston with WEE termination.

tests/1.DAT




TITLE Constant displacement piston

CONTROL
c for sine only:
EDGE.ANALYSIS
ASYMMETRIC.COMPLEX.SOLUTION
FRONTAL.SINUSOIDAL.SOLUTION
c all types:
AXISYMMETRIC
SHOW.RESOLVED.PARAMETERS
CONTROL.END

PARAMETERS
'r1' = 1 c radius of piston
'r2' = <2 r1="r1">  c radius of FE
't1' = <'r1' + 'r2'> c thickness of WEE
'fmax' = 1000
'm' = INT<4 344="344" fmax="fmax" r1="r1">  c mesh count


NODES
NODE AXIS X Y
c structure
1  1 0 <'r1'>
2  1 0 0

c acoustic FE
11 1 0 <'r1'>
12 1 0 0
13 1 <'r1'> <'r1'>
14 1 <'r1'> 0
15 1 <0 .707=".707" r2="r2"> <0 .707=".707" r2="r2">
16 1 <'r2'> 0
17 1 <0 .707=".707" r2="r2" t1="t1"> <0 .707=".707" r2="r2" t1="t1">
18 1 <'r2' + 't1'> 0
19 1 0 <'r2'>
20 1 0 <'r2' + 't1'>
21 4 <'r2'> 67.5
22 4 <'r2'> 22.5
23 4 <('r2'+'t1')>  67.5
24 4 <('r2'+'t1')>  22.5

PAFBLOCKS
BLOCK TYPE GROUP ELEMENT PROP N1 N2 TOPO
  1    6    1      42130  12  <'m'>  0  1 2 c thin shell of revolution.
  2    1    2      29220  11  <'m'>  <'m'>  11 12 13 14 c FE
  3    1    2      29220  11  <'m'>  <'m'>  11 13 19 15 0 0 0 21 c FE
  4    1    2      29220  11  <'m'>  <'m'>  13 14 15 16 0 0 0 22 c FE
  5    1    3      29320  11  <'m'>  1  19 15 20 17 21 0 0 23 c WEE
  6    1    3      29320  11  <'m'>  1  15 16 17 18 22 0 0 24 c WEE

MATERIAL
MATERIAL BULK.MO RO
  11    <344> 1.18

PLATES.AND.SHELLS
PLATE.OR.SHELL  MATER THICKNESS
  12             12     1E-3

MATERIAL
MATERIAL E RO NU
  12     100E9 1E-10 0.33   c -> massless.

REPEATED.FREEDOMS
N1 PLANE DIRE
1    1    1

RESTRAINTS
NODE PLANE DIRE
 1    1   23456

c SINE modules
MASTERS
NODE DIRE
1   1

ENFORCED.HARMONIC.MOTION
c 1/2/3: disp/vel/accel
TYPE NODE DIRE TABLE
 1    1    1    1

TABLE
TABLE   BASIS VALUE
  1       1   1 0
  1     10000 1 0

FREQUENCIES.FOR.ANALYSIS
TYPE START FINISH NUMBER
 3   10    <'fmax'>   100

RESPONSE
TYPE
0

FULL.DYNAMICS.OUTPUT
TYPE  START  FINISH  STEP
  4   1   1E6 1

MODES.AND.FREQUENCIES
AUTO START MODES
 0 0 0

END.OF.DATA

tunes to buy

Air 2000 by Albion

or was it,

Love Shy by Kristine Blond?




Friday 7 December 2012

Neat python file reading


with open("hello.txt") as f:
    for line in f:
        print line

shower pumps

www.showerpumpselector.co.uk

I want regenerative (as the pump is at the same level as storage tank), dual impeller to pump hot and cold.


On pump location:  loft is ok as long as there's some head from the cold water storage.
http://www.diynot.com/forums/viewtopic.php?t=111980


More instructions
http://www.salamander-pumps.com/how-to/install-a-loft-pump.html

linux sound

linuxaudio.org
http://rg42.org/start

Wednesday 5 December 2012

matplotlib plot with latex rendering, pandas store, and rotated axis numbering and spacing


subplot(212); title('Narrowband transducer response.')
x = store['v8_g7e_SPL']; plot(x.index / 1000, x, label=r'$f_{0} = 19.6\,kHz$')
x = store['v8_g7n_SPL']; plot(x.index / 1000, x, label=r'$f_{0} = 19.6\,kHz$')
x = store['v8_g7m_SPL']; plot(x.index / 1000, x, label=r'$f_{0} = 21.5\,kHz$')
plt.setp(plt.xticks()[1], rotation=30)

xlabel(r'$Frequency\ (kHz)$'); ylabel(r'$dB\ SPL, d=10 cm, |V|=1 V$')
dmp = xticks([0, 10, 14.4, 16, 17, 19.6, 20, 21, 21.5],
   [0, 10, r'$f_{a_{min}}=14.4$', r'$f_{e}=16$', r'$f_{a}=17$', r'$f_{0}=19.6$', 20, r'$f_{a_{max}}=21$', r'$f_{0}=21.5$'])
dmp = yticks(arange(60, 115, 5))
xlim(14, 24); ylim(60, 110); legend(loc='best')

subplots_adjust(hspace=0.3)