How can I make point source? Answered
Hi. I'm trying to make point source with 1MPa, 200kHz.Half sine.
pupple : point source (waternl_1)
blue : water (waternl, it's same waternl_1)
green : air
I'm trying to drive function at surface of point source.
But the output signal wasn't have 1MPa.
and function drive both direction heading to inside circle and outside circle.
Help me...
plod
pdef pld1 func /* choose driving function and name 'pld1'
matr mtt1 waternl_1 out
sdf2 pld1 mtt1 waternl waternl_1 /* replace with actual matr names
end
8 comments
Hi there,
The output signal will depend on the drive function you are using. What code are you using in func command? If you want to load the interface between waternl and waternl_1 then the code you showed here should work.
Best Regards,
Chloe
As I wrote at first, 1MPa, 200kHz.Half sine.
func sine 0.2e6 1.e6 0. 0.5
I just wanted toyour pre check to make sure your code was correct. So the output signal is not 1 MPa? Could you share your files via your preferred file sharing service and I can take a look for you.
Best Regards,
Chloe
I'm just gonna paste my code.
The output signal change depend on source size.
Please help..
--------
mp omp 32
symb x1 = 0.0
symb x2 = $x1 + 5.e-3
symb x3 = $x2 + 19.e-3
symb x4 = $x3 + 41.e-3
symb x5 = $x4 + 41.e-3
symb x6 = $x5 + 59.e-3
symb y1 = 0.0
symb y2 = $y1 + 44.e-3
symb y3 = $y2 + 2.e-3
symb freqint = 0.5e6
symb wavevel = 1500
symb wavemin = $wavevel / $freqint
symb nelem = 30
symb box = $wavemin / $nelem
symb i1 = 1
symb i2 = $i1 + nint ( ( $x2 - $x1 ) / $box )
symb i3 = $i2 + nint ( ( $x3 - $x2 ) / $box )
symb i4 = $i3 + nint ( ( $x4 - $x3 ) / $box )
symb i5 = $i4 + nint ( ( $x5 - $x4 ) / $box )
symb i6 = $i5 + nint ( ( $x6 - $x5 ) / $box )
symb indgrd = $i6
symb j1 = 1
symb j2 = $j1 + nint ( ( $y2 - $y1 ) / $box )
symb j3 = $j2 + nint ( ( $y3 - $y2 ) / $box )
symb jndgrd = $j3
grid $indgrd $jndgrd axix /* 2D (axisymmetric) (or axiy)
geom
keypnt 6 3
end
symb #read matr.prjmat
symb radius_x = 60.e-3
symb radius_y = 44.e-3
site
regn air
regn waternl $i4 $i6 $j1 $j3
elip waternl $x4 $y1 0. stnd $radius_x $radius_y 0
cyln vacm Z 0.0 1.0 $x3 $y1 0.1e-3 0.1e-3 0.0 0.0 0.0 0.0
end
grph
c line on
plot matr
end
term
boun
side xmin absr stnd
side xmax absr stnd
side ymin symm all
side ymax absr stnd
end
func sine 0.2e6 1.e6 0. 0.5
calc
pres aprs
max aprs pmin pmax
end
plod
pdef pld1 func /* choose driving function and name 'pld1'
spot myspt $x3 $y1
sdf2 pld1 myspt vacm waternl
end
pout
hist func
hist aprs $i2+1 $i2+1 1 1 1 1
hist aprs $i5 $i5 1 1 1 1
end
prcs /* run process step
symb #get { step } timestep
symb simtime = 150.e-6 /* Simulation Time
c symb simtime = 3.e-3
symb nexec = nint ( $simtime / $step )
symb nloops = 75
c symb nloops = 300
symb nexec_loop = nint ( $nexec / $nloops )
grph
set imag avi /* Movie generation
c arrow off /* Remove poling arrows
end
proc plot save
exec $nexec_loop
grph
nvew 4 1
colr tabl data 6 /* Set color table for data
plot 1 2 3
mirr y
plot aprs
plot pmax
plot pmin
imag /* Save frame of movie - creates AVI in folder when model executes fully
end
end$ proc
proc plot $nloops
symb #get { labl } jobname /* find name of run
symb #save symb.$labl /* save in symb file
stop /* return to command prompt
Hi,
I will also need the code for matr.prjmat.
Thanks,
Chloe
Here is contents of matr.prjmat
c --------------------------------------------------------------
c Project Material List
c --------------------------------------------------------------
c -------------------------------------------------------------------------
c Global variables used in all the material definitions
c -------------------------------------------------------------------------
c
symb epvacm = 8.854e-12 /* dielectric constant for vacumn
symb freqdamp = 1.e6 if noexist /* specified frequency for damping model
symb rmu0 = 1.2566e-6
symb #msg 5
********************************************************
Damping matched at $freqdamp Hz
Redefine variable 'freqdamp' if device centre frequency
varies significantly from this value
********************************************************
c
c -------------------------------------------------------------------------
c Now define the axis transformation - only posx used in this file
c -------------------------------------------------------------------------
axis
form vctr
defn posx car2 0. 0. 0. 1. 0. 0. 0. 1. 0.
defn negx car2 0. 0. 0. -1. 0. 0. 0. 1. 0.
defn posy car2 0. 0. 0. 0. 1. 0. 0. 0. 1.
defn negy car2 0. 0. 0. 0. -1. 0. 0. 0. 1.
defn posz car2 0. 0. 0. 0. 0. 1. 1. 0. 0.
defn negz car2 0. 0. 0. 0. 0. -1. 1. 0. 0.
end
c -------------------------------------------------------------------------
c Input material properties to program
c -------------------------------------------------------------------------
matr
c -------------------------------------------------------------------------
c air : Air, room temp
c -------------------------------------------------------------------------
c
type elas
wvsp on
prop air 1.24 343. 0.
elec air $epvacm
symb eps = $epvacm * 1.0
elec air $eps
thrm air 1005. 0.026
c --------------------------------------------------------------
c type : NONLINEAR :
c name : waternl :
c desc : Water - nonlinear for Type TISU :
c --------------------------------------------------------------
wvsp on
type tisu
prop waternl 1000 1500 0 0.1 0.0 0.0
5 -2e+08 2e+08
sdmp waternl $freqdamp db 0.002 0 1e+06 2 0.01 1
thrm waternl 4178 0.58 0.58 0.58 1.0 0 0 0
symb eps = 1
symb aeps = $epvacm * $eps
elec waternl $aeps
copy waternl waternl_1
c --------------------------------------------------------------
c type : MISC :
c name : vacm :
c desc : Vacuum, also use Void :
c --------------------------------------------------------------
wvsp on
type elas
prop vacm 0 0 0
symb eps = 1
symb aeps = $epvacm * $eps
elec vacm $aeps
copy vacm vacm1
copy vacm vacm2
copy vacm vacm3
copy vacm vacm4
end
Hi,
So I had a look at your model. Everything looks set up correctly. The acoustic pressure output is less energy because the wave loses energy as it propagates. This amount will change depending on the damping in the water and the propagation distance. Do you have experimental results which show a higher amplitude signal being received?
Best Regards,
Chloe
Hi,
Actually I have no experimental results because it's very difficult to measure real data.
Goal of this simulation is to predict power of source.
I think there is minimum size of source.
When I design source with line or rectangular shape, it works.
Pressure changes as it propagates, but not significant like point source.
I want to know that something I can do more or it's limitation of this tool.
Please check it.
Best Regards.
HJ.
Please sign in to leave a comment.
Didn't find what you were looking for?
New post