Solhaga tänker om

Hemmapulare debatterar lämpligen i detta forum.

Moderator: Redaktörer

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Solhaga tänker om

Inläggav solhaga » 2016-10-11 19:46

Har börjat vandra iväg från dipolbasar...

Vad skall man då ha istället?
Senast redigerad av solhaga 2021-03-16 19:47, redigerad totalt 25 gånger.

Användarvisningsbild
nuffe
 
Inlägg: 2405
Blev medlem: 2010-09-28
Ort: Lerum

Re: Solhaga tänker om

Inläggav nuffe » 2016-10-11 20:55

Vad läser jag???? överger du dipoler??
Jag måste ha missupfattat.

Monolog hoppas jag det inte blir, men tyvärr kommer nog dina frågor att ligga över min kunskap så det kan bli svårt att svara.

Lycka till

Henrik

Användarvisningsbild
Kalejdokom
ARTist
 
Inlägg: 7541
Blev medlem: 2007-10-28

Re: Solhaga tänker om

Inläggav Kalejdokom » 2016-10-11 21:08

Är det nu man ska leta rätt på en sån där emoticon med en gubbe som äter popcorn? :? :) Hittar ingen...

Tipset är väl bara att ta det lugnt och inte handla för snabbt när man står inför en så genomgripande omdaning. Jag har många gånger låtit mina idéer vila ett tag i huvud och i skissblocket vid sängkanten för att senare ta nya vägar som man inte alls hade i tankarna tidigare. Som med mina senaste (sista?) frontsystem (som dock inte i något avseende kan mäta sig med dina muskelvidunder :) ). Det blev verkligen inte som jag trodde/tänkte från början, men jag är oerhört nöjd och hoppas att det lär dröja innan jag sågar isär dom!

Lycka till med dina funderingar!

Edit: nuffe hann emellan med sitt inlägg. Håller med om att det ligger även en bit över min nivå. Det närmsta jag gjort i att bygga egna högtalarelement är väl pappmuggstelefonen man lekte med i barndomen... :D
Senast redigerad av Kalejdokom 2016-10-11 21:10, redigerad totalt 1 gång.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-11 21:09

nuffe skrev:Vad läser jag???? överger du dipoler??
Jag måste ha missupfattat.

Monolog hoppas jag det inte blir, men tyvärr kommer nog dina frågor att ligga över min kunskap så det kan bli svårt att svara.

Lycka till

Henrik

Var lugn. Frontarna är fortfarande dipoler. För mig är det visuellt viktigt att ha baselement i fronthögtalarna.

Men den allra djupaste basen kommer från hörnbasarna, troligtvis slutna lådor.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-11 21:11

Kalejdokom skrev:Är det nu man ska leta rätt på en sån där emoticon med en gubbe som äter popcorn? :? :) Hittar ingen...

Tipset är väl bara att ta det lugnt och inte handla för snabbt när man står inför en så genomgripande omdaning. Jag har många gånger låtit mina idéer vila ett tag i huvud och i skissblocket vid sängkanten för att senare ta nya vägar som man inte alls hade i tankarna tidigare. Som med mina senaste (sista?) frontsystem (som dock inte i något avseende kan mäta sig med dina muskelvidunder :) ). Det blev verkligen inte som jag trodde/tänkte från början, men jag är oerhört nöjd och hoppas att det lär dröja innan jag sågar isär dom!

Lycka till med dina funderingar!


Nja, tankarna har nog funnits där i något år men det var först i och med denna tråden som jag förstod vad jag skulle göra.

Användarvisningsbild
Kalejdokom
ARTist
 
Inlägg: 7541
Blev medlem: 2007-10-28

Re: Solhaga tänker om

Inläggav Kalejdokom » 2016-10-11 21:13

solhaga skrev:Men den allra djupaste basen kommer från hörnbasarna, troligtvis slutna lådor.

Jag har ju samma filosofi i mitt system med två hörnplacerade subbar (XLS med slavbas) som är tänkta att fylla upp där dipolerna faller av. Problemet (?) är att jag inte upplever att dipolerna faller av... 8O 8)

Men återigen, jag spelar nog i en annan division.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-11 21:23

Kalejdokom skrev:
solhaga skrev:Men den allra djupaste basen kommer från hörnbasarna, troligtvis slutna lådor.

Jag har ju samma filosofi i mitt system med två hörnplacerade subbar (XLS med slavbas) som är tänkta att fylla upp där dipolerna faller av. Problemet (?) är att jag inte upplever att dipolerna faller av... 8O 8)

Men återigen, jag spelar nog i en annan division.


Jag saknar väl heller ingen bas, men skulle nog göra det om jag minskade fronthögtalarnas baselementantal.
Dessutom har jag observerat att AMT:erna kan fladdra rejält vid vissa basgångar; de befinner sig ju mitt i den värsta stormen.
Så detta blir istället för att bygga in AMT:erna i någon låda eller dämpa ytterligare bakom dem.

Tror nog att det är du som spelar i någon division över mig.

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-11 22:06

Har du kikat på Najda?
http://www.waf-audio.com/products.php?pos=1&lang=en
Den har visserligen ingen inbyggd usb-mottagare men det löser man med en enkel usb-i2s-adapter. Sen kan den göra all filtrering och har en 8-kanalig analog volymkontroll efter dac:arna.

Om du vill leka med spridningsmönster själv kan du köra Octave. Det är tillräckligt likt Matlab för att mitt fulskript ska kunna köras omodifierat.
https://www.gnu.org/software/octave/download.html

Aningen trimmat skript med lite bättre dokumentation:
Kod: Markera allt
%radiation pattern
nv=256; %vertikalt antal pixlar
nh=512; %horisontellt antal pixlar
dx=10e-3; %pixelstorlek i meter



f=20000; %frekvens, Hz
L=320e-3; %källhöjd i meter

x0=-50e-3; %lägg källorna lite utanför vänsterkanten

c=340;
lambda=c/f;
world = zeros(nv,nh);
y=linspace(-nv/2*dx,nv/2*dx,nv);
x=linspace(0,nh*dx,nh);

source = (y>(-L/2)).*(y<(L/2)); %rektangulär källa
%source = gausswin(ny,ny/(L/dx)); %gaussisk källa

h = waitbar(0,'wait..')
for nn=1:nv
    waitbar(nn/nv,h)
    if source(nn)>1e-2;
        for nx = 1:nh
            for ny=1:(nv/2)
                r=sqrt((x(nx)-x0).^2+(y(ny)-y(nn)).^2);
                world(ny,nx)=world(ny,nx)+source(nn).*exp(1i*2*pi*r/lambda)./r;
            end
        end
    end
end
world = world + flipud(world);
close(h)

logimage=20*log(abs((world)));
imagesc(x,y,logimage,[0 60]);
colormap(jet(256))
colorbar
axis image

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-11 23:27

HenrikE skrev:Har du kikat på Najda?
http://www.waf-audio.com/products.php?pos=1&lang=en
Den har visserligen ingen inbyggd usb-mottagare men det löser man med en enkel usb-i2s-adapter. Sen kan den göra all filtrering och har en 8-kanalig analog volymkontroll efter dac:arna.

Om du vill leka med spridningsmönster själv kan du köra Octave. Det är tillräckligt likt Matlab för att mitt fulskript ska kunna köras omodifierat.
https://www.gnu.org/software/octave/download.html


Jag har tittat på liknande lösningar. Är inte riktigt nöjd med omsamplingarna hos Najda, annars verkar det ju vara ett kraftfullt kort med tillräckliga prestanda.
Med exaSound e28 (specifikation på sidan 24) behöver jag inte bekymra mig om den digitala biten liksom och ej heller de analoga utgångsstegens drivförmåga eller prestanda.
Det är värt en hel del för mig. Den har ju också en riktigt bra hörlursutgång.

Tack för tipset med Octave, har haft Mathlab igång för några års sedan, men lyckades inte komma över tröskeln.

Fick igång Octave trots varningen om Windows 10 varande otestad.
Kopierade in ditt skript, det tog lite tid att rendera dock. Med det går kanske att snabba upp det om man har lite sämre upplösning.

32 cm hög AMT vid 20 kHz:

Bild

140 cm hög AMT vid 20 kHz:

Bild

Tackar och bugar!

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-12 09:50

Ja det gick lite väl trögt i octave. Det gick klart bättre i matlab men fortfarande för trögt. Här kommer en något bättre version med en for-loop mindre. Jag har inte provat den i octave men den går mycket snabbare i matlab. Jag passade på att ändra så att man kan definiera upplösningen för bilden och källpunkterna separat också. Funderar på att fixa så att källan kan bli tvådimensionell. Eller varför inte tredimensionell när jag ändå håller på..

Kod: Markera allt
%radiation pattern v2
nv=256; %vertikalt antal pixlar
nh=512; %horisontellt antal pixlar
dx=10e-3; %pixelstorlek i meter

dxs=5e-3; %källpixelstorlek


f=5000; %frekvens, Hz
L=1000e-3; %källhöjd i meter

x0=-50e-3; %lägg källorna lite utanför vänsterkanten

ns=round(L/dxs); %antal källpunkter
ys=linspace(-L/2,L/2,ns);

c=340;
lambda=c/f;
world = zeros(nv,nh);
y=linspace(-nv/2*dx,nv/2*dx,nv);
x=linspace(0,nh*dx,nh);

source = ones(size(ys))*100/ns; %rektangulär källa

h = waitbar(0,'wait..');
for nn=1:ns
    waitbar(nn/ns,h)
    if source(nn)>1e-2;
        %for nx = 1:nh
            for ny=1:(nv/2) %räkna bara övre halvan (undre är symmetrisk)
                r=sqrt((x-x0).^2+(y(ny)-ys(nn)).^2);
                world(ny,:)=world(ny,:)+source(nn).*exp(1i*2*pi*r/lambda)./r;
            end
        %end
    end
end
world = world + flipud(world); %koperia övre halvan till undre
close(h)

logimage=20*log(abs((world)));
imagesc(x,y,logimage,[0 60]);
colormap(jet(256))
colorbar
axis image

Användarvisningsbild
nuffe
 
Inlägg: 2405
Blev medlem: 2010-09-28
Ort: Lerum

Re: Solhaga tänker om

Inläggav nuffe » 2016-10-12 10:48

solhaga skrev:
nuffe skrev:Vad läser jag???? överger du dipoler??
Jag måste ha missupfattat.

Monolog hoppas jag det inte blir, men tyvärr kommer nog dina frågor att ligga över min kunskap så det kan bli svårt att svara.

Lycka till

Henrik

Var lugn. Frontarna är fortfarande dipoler. För mig är det visuellt viktigt att ha baselement i fronthögtalarna.

Men den allra djupaste basen kommer från hörnbasarna, troligtvis slutna lådor.


Nu är jag lugn......

Vi ska försöka hjälpa till med det lilla vi kan.

Henrik

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 10:50

Tackar.
Fick det inte att fungera i Octave dock:

error: 'HenrikE2' undefined near line 1 column 1


Är det då den första punkten som skall renderas som går fel?
Det verkar som om Octave inte klarar anonymiseringen (automatiseringen?) av rendering i x-led.
Eller något... Utan en grundförståelse MathLab så blir det bara gissningar från min sida.

Har du möjlighet att avlusa det i Octave?

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 10:53

nuffe skrev:
solhaga skrev:
nuffe skrev:Vad läser jag???? överger du dipoler??
Jag måste ha missupfattat.

Monolog hoppas jag det inte blir, men tyvärr kommer nog dina frågor att ligga över min kunskap så det kan bli svårt att svara.

Lycka till

Henrik

Var lugn. Frontarna är fortfarande dipoler. För mig är det visuellt viktigt att ha baselement i fronthögtalarna.

Men den allra djupaste basen kommer från hörnbasarna, troligtvis slutna lådor.


Nu är jag lugn......

Vi ska försöka hjälpa till med det lilla vi kan.

Henrik

Ja, det första blir att kolla in Kalejdokoms subbasar.

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-12 11:27

solhaga skrev:Tackar.
Fick det inte att fungera i Octave dock:

error: 'HenrikE2' undefined near line 1 column 1


Är det då den första punkten som skall renderas som går fel?
Det verkar som om Octave inte klarar anonymiseringen (automatiseringen?) av rendering i x-led.
Eller något... Utan en grundförståelse MathLab så blir det bara gissningar från min sida.

Har du möjlighet att avlusa det i Octave?

Hmm den klagar på något som står på första raden i skriptet. "HenrikE2" borde inte stå någonstans. Jag gissar att du har fått med något extra i början när du kopierade koden.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 12:40

HenrikE2 är namnet på filen.
Körning av den första versionen ger

>> HenrikE

h = -14.239


Då är det verkligen skumt, har kollat med en hexeditor och båda filerna börjar med 25 72 (%r).

Vid installeringen av Octave så varnades det för att den var otestad i Windows 10.
Får kolla vidare. Jag kan ju utgå från den första versionen och editera in ändringarnafrån den andra bit för bit.
Vem vet, jag kanske lär mig något. Jag är ju faktiskt C-programmerare till yrket.
Senast redigerad av solhaga 2016-10-12 12:53, redigerad totalt 1 gång.

Användarvisningsbild
Kalejdokom
ARTist
 
Inlägg: 7541
Blev medlem: 2007-10-28

Re: Solhaga tänker om

Inläggav Kalejdokom » 2016-10-12 12:42

solhaga skrev:Ja, det första blir att kolla in Kalejdokoms subbasar.

:( :| :lol:

:P

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-12 13:28

solhaga skrev:HenrikE2 är namnet på filen.
Körning av den första versionen ger

>> HenrikE

h = -14.239


Då är det verkligen skumt, har kollat med en hexeditor och båda filerna börjar med 25 72 (%r).

Vid installeringen av Octave så varnades det för att den var otestad i Windows 10.
Får kolla vidare. Jag kan ju utgå från den första versionen och editera in ändringarnafrån den andra bit för bit.
Vem vet, jag kanske lär mig något. Jag är ju faktiskt C-programmerare till yrket.


Aha det är filnamnet. Ett tänkbar förklaring då kan vara att octave helt enkelt inte hittar skriptet. Står den i rätt katalog? Jag har bara matlab här, så jag kan tyvärr inte testa i octave förrän i kväll. Då kommer det en version som klarar tredimensionella källor också :)

Användarvisningsbild
joakimfors
 
Inlägg: 773
Blev medlem: 2011-09-12
Ort: Lund

Re: Solhaga tänker om

Inläggav joakimfors » 2016-10-12 13:36

Fungerar fint här på Octave 4.2.0rc2.

Bild

@solhaga:

Har du .m som ändelse på filnamnet. Dvs något i stil med: radpatv2.m

som sen körs i Octave/MATLAB med: > radpatv2

Se även till att du är i samma katalog med Ocatve som filen ligger i. Nuvarande aktiva katalog får du med kommandot 'pwd'.

Användarvisningsbild
sportbilsentusiasten
Nej, Sporthojsentusiasten
 
Inlägg: 12673
Blev medlem: 2008-07-01

Re: Solhaga tänker om

Inläggav sportbilsentusiasten » 2016-10-12 14:29

solhaga skrev:Nja, tankarna har nog funnits där i något år men det var först i och med denna tråden som jag förstod vad jag skulle göra.

Så pass!
Nya utmaningar väntar. Spännande. :D

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 14:36

joakimfors skrev:Fungerar fint här på Octave 4.2.0rc2.

[ Bild ]

@solhaga:

Har du .m som ändelse på filnamnet. Dvs något i stil med: radpatv2.m

som sen körs i Octave/MATLAB med: > radpatv2

Se även till att du är i samma katalog med Ocatve som filen ligger i. Nuvarande aktiva katalog får du med kommandot 'pwd'.


Ja, felen ligger åt det hållet. Har bara kört via ikonen "kugghjul med gul pil", men om jag i CLI:t skriver in ett slumpnamn så får jag samma fel.
Har dock rätt filändelse och arbetskatalog.

Bytte ut innehållet i den första versionen mot den andra och då fungerade det. Renderingen tar nu 5 sekunder.

Kör version 4.0.3 av Octave.

Fick en idé. Stängde Octave och öppnade den genom att i Windows Explorer dubbelklicka på ett av de skript som inte fungerade förut.
Fungerade. Och helt plötsligt så fungerade alla skript. Men inte om jag gör spara som i Octave.
Så det verkar som om det inte går att skapa filer i Octave Win10, bättre att kopiera ett existerande skript och öppna Octave genom att dubbelklicka på skriptet i Windows Explorer och sedan editera i Octave.

3D? Tur att jag inte slängde 3D-glasögonen från filmen i fredags då. 8)

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 18:55

sportbilsentusiasten skrev:
solhaga skrev:Nja, tankarna har nog funnits där i något år men det var först i och med denna tråden som jag förstod vad jag skulle göra.

Så pass!
Nya utmaningar väntar. Spännande. :D


Ja, det skall bli en rolig och utmanande resa. Förhoppningsvis så vet jag var målet är.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 19:11

Meckat lite med skriptet.
Lagt in frekvens, position för källa (streckad linje) och sweetspot (vit prick).
Justerat antal pixlar så att det stämmer med rummets dimensioner: 2,36 m till tak och 5,1 m från framvägg till bakvägg.
AMT:en är här 140 cm hög, 48 cm från golv samt tak

Kod: Markera allt
#radiation pattern v2.5
nv=236; #vertikalt antal pixlar
nh=512; #horisontellt antal pixlar
dx=10e-3; #pixelstorlek i meter
dxs=5e-3; #källpixelstorlek

f=300; #frekvens, Hz
L=1.400; #källhöjd i meter
V=1; # avstånd från främre vägg i meter
S=3; # Avstånd från källa till lyssningsplats.
SS=V + 3; # Position för lyssningsplats.

ns=round(L/dxs); #antal källpunkter
ys=linspace(-L/2,L/2,ns);
x0=V; # Källa

c=340;
lambda=c/f;
world = zeros(nv,nh);
y=linspace(-nv/2*dx,nv/2*dx,nv);
x=linspace(0,nh*dx,nh);

source = ones(size(ys))*100/ns; %rektangulär källa

h = waitbar(0,'wait..');
for nn=1:ns
    waitbar(nn/ns,h)
    if source(nn)>1e-2;
        %for nx = 1:nh
            for ny=1:(nv/2) %räkna bara övre halvan (undre är symmetrisk)
                r=sqrt((x-x0).^2+(y(ny)-ys(nn)).^2);
                world(ny,:)=world(ny,:)+source(nn).*exp(1i*2*pi*r/lambda)./r;
            end
        %end
    end
end
world = world + flipud(world); %kopiera övre halvan till undre
close(h)

logimage=20*log(abs((world)));
imagesc(x,y,logimage,[0 100]);
colormap(jet(256))
colorbar
axis image

# Titel och positioner
amt = line (V,[-L/2 L/2],'LineWidth',2, 'LineStyle',":"); % Position på AMT
sweetspot = line (SS,[(118-108)/100 (118-112)/100],'LineWidth',3,'Color', "white"); % Position på sweetspot
text (0, -1.4, sprintf("Frekvens: %d Hz",f));
text (V-0.1, 1.5, sprintf("AMT"));
text (SS-0.05, 1.5, sprintf("SS"));


Lite plottar då:

Bild
Bild
Bild
Bild
Bild
Bild

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-12 21:30

Ser bra ut! Tänkte bara nämna ifall någon undrar. Skriptet räknar på monopoler, så dipolutsläckningen är inte alls med. Reflexer från golv och tak är det inte heller.

Jag lovade ju en ny version som klarar tredimensionella källor. Den kommer här:
Kod: Markera allt
%radiation pattern v3

%% definiera rummet
nv=256; %vertikalt antal pixlar
nh=512; %horisontellt antal pixlar
nd=256; %pixlar i djupled
dx=10e-3; %pixelstorlek i meter


%% definiera källan
f=10000; %frekvens, Hz
dxs=5e-3; %källpunktsstorlek

%exempel: plan källa 100x20mm
% Ly=360e-3; %källhöjd i meter
% Lz=80e-3; %källbredd i meter
% Lr=1000; %källans radie
% SR=1000; %krökningsradie
% SA=0; %konisk lutning

%exempel: dome, 26mm diameter, 30mm krökningsradie
% Ly=26e-3; %källhöjd i meter
% Lz=26e-3; %källbredd i meter
% Lr=13e-3; %källans radie
% SR=30e-3; %krökningsradie
% SA=0; %konisk lutning

%exempel: kon, 200mm diameter, 60mm djup
Ly=200e-3; %källhöjd i meter
Lz=200e-3; %källbredd i meter
Lr=100e-3; %källans radie
SR=100; %krökningsradie
SA=60/100; %konisk lutning



%% räkna fram källpunkter
x0=-50e-3; %lägg källorna lite utanför rummet för att undvika division med noll
z0=0; %sidled
nsy=round(Ly/dxs); %antal källpunkter y
tempy=linspace(-Ly/2,Ly/2,nsy);
nsz=round(Lz/dxs); %antal källpunkter z
tempz=linspace(-Lz/2,Lz/2,nsz);
[ys, zs] = meshgrid(tempy,tempz);
ys=ys(:);
zs=zs(:);


rs=sqrt(ys.^2 + zs.^2); %radie
xs=x0+sqrt(SR^2-rs.^2)-SR + (rs-Lr)*SA; %räkna fram djup
ints = ones(size(ys)); %källintensitet
mask=rs<Lr; %cirkulär källa


rs=rs(mask);
xs=xs(mask);
ys=ys(mask);
zs=zs(mask);
ints=ints(mask);
ints=1000*ints/sum(ints);
ns=length(ints);

%plotta källpunkterna
figure(1)
plot3(xs,ys,zs,'.')
axis equal

%% skapa matriser och vektorer
c=340;
lambda=c/f;
world_v = zeros(nv,nh);
world_h = zeros(nd,nh);
y=linspace(-nv/2*dx,nv/2*dx,nv);
x=linspace(0,nh*dx,nh);
z=linspace(-nd/2*dx,nd/2*dx,nd);


%% räkna vertikal spridning
h = waitbar(0,'wait..');
[xg, yg]=meshgrid(x,y);
for nn=1:ns
    waitbar(nn/ns,h)
    r=sqrt((xg-xs(nn)).^2+(yg-ys(nn)).^2+zs(nn).^2);
    world_v=world_v+ints(nn).*exp(1i*2*pi*r/lambda)./r.^2;
end

close(h)

logimage_v=20*log(abs((world_v)));
figure(2)
imagesc(x,y,logimage_v,[0 120]);
colormap(jet(256))
colorbar
axis image
title(cstrcat('Vertikal spridning, ',num2str(f), ' Hz'))


%% räkna horisontell spridning
h = waitbar(0,'wait..');
[xg, zg]=meshgrid(x,z);
for nn=1:ns
    waitbar(nn/ns,h)
    r=sqrt((xg-xs(nn)).^2+(zg-zs(nn)).^2+ys(nn).^2);
    world_h=world_h+ints(nn).*exp(1i*2*pi*r/lambda)./r.^2;
end

close(h)

logimage_h=20*log(abs((world_h)));
figure(3)
imagesc(x,z,logimage_h,[0 120]);
colormap(jet(256))
colorbar
axis image
title(cstrcat(''Horisontell spridning, ',num2str(f), ' Hz'))


Den klarar att räkna på plan, sfärisk (typ domediskant) och konisk källa. Formen kan vara rektangulär eller cirkulär. Jag har lagt in tre tre exempel för att visa hur man definierar de olika fallen. Man får både vertikal och horisontell spridning.

Exempel från kon:
kon.png
kon.png (130.02 KiB) Visad 21656 gånger

konsprid.png
konsprid.png (71.1 KiB) Visad 21656 gånger

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 23:23

Då får vi se vart Basta! kan leda mig vad det gäller hörnsubbarna.
Tanken är visserligen att de skall stötta från 80 Hz och nedåt, men det vore väl snålt att designa efter det.
Det vore bra om de själva kunde möta AMT:erna vid 300 - 400 Hz eller så.
Sätter upp Basta! för 100 dB, får se vad systemet kan leverera över det.

Hoppas att jag har fattat det rätt och gjort förnuftiga antagandet.
Mottager ödmjukt alla rättelser och synpunkter.

Elementet:

Bild

Xmax är enligt AE 14 mm peak, jag antar att det är peak som avses i Basta!

(Svart = SPL, rött = konutslag, streckat grönt drivspänning/maxspänning)

Tänker mig en låda 60 cm i kubik, det skulle ge ungefär 200 l:

Bild

I den lådan fås en konutslag på knappa 2 mm vid 20 Hz.

Rumsbidraget, vad jag har förstått duger det med försummelsevärdena här:

Bild

För att simulera EQ, så lägger jag på en LT:

Bild

Konutslaget vid 20 Hz ökar med två mm och förstärkaren får driva lite mer, ungefär 8 Vrms. En bit i från de 20 Vrms som stegen kan ge.

För en låda på 300 l, en kub om cirka 70 cm fås:

Bild

Ingen stor förändring förutom att system Q och fo gick ner en bit förstås och också nödvändig uteffekt sjunk.

Så hur ser det ut vid 110 dB och 20 Hz:

Bild

Här klipper alltså slutstegen. Fortfarande en bit kvar till Xmax, konutslaget är här knappt 7 mm.

Hur långt kommer jag med en 200 l låda då:

Bild

108 dB, det lär räcka. Subbarna är ju fyra och dessutom placerade i var sitt hörn.

Så var det fronten (tillbaka till 100 dB nominell SPL), en enkel kub:

Bild

Verkar ju ok, kommer att LP-filtrera ändå vid max 300 Hz. Men de bygger de väl mycket ut i rummet. Hur ser det ut med en hälften så djup låda, dvs 80x90x30 cm?

Bild

Justera EQ/LT igen:

Bild

Se vad det kan bli för max SPL då:

Bild

Jag kommer naturligtvis inte bygga lådorna som just rektangulära lådor, det blir väl mycket parallella ytor.
De skall ju vara i hörn, så här gäller det att var lite innovativ vad det gäller lådans form, stagning mm.

Men jag skall ju ha något att göra i morgon också...

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-12 23:45

HenrikE skrev:Ser bra ut! Tänkte bara nämna ifall någon undrar. Skriptet räknar på monopoler, så dipolutsläckningen är inte alls med. Reflexer från golv och tak är det inte heller.


Ja, tänkte att det ändå kunde vara bra att se explicit hur det ser ut bakom elementet för eventuell dämpning av reflektioner.
Fronthögtalarna blir ju dipoler, får se hur långt jag kommer med en minimal baffelbredd.

HenrikE skrev:Jag lovade ju en ny version som klarar tredimensionella källor. Den kommer här:

Den klarar att räkna på plan, sfärisk (typ domediskant) och konisk källa. Formen kan vara rektangulär eller cirkulär. Jag har lagt in tre tre exempel för att visa hur man definierar de olika fallen. Man får både vertikal och horisontell spridning.

Exempel från kon:
kon.png

konsprid.png


Simulera spridning i 3D, du är verkligen veckans hjälte.

Har precis kört ditt 3D-skript. Så himla grymt!
Skall snarast anpassa det efter mina parametrar.

Fick ett lätt åtgärdat syntaxfel dock:

title(cstrcat(''Horisontell spridning, ',num2str(f), ' Hz'))


En fnutt för mycket bara innan Horisontell.

Användarvisningsbild
darkg
Ljushuvud
 
Inlägg: 8651
Blev medlem: 2011-12-11
Ort: Kristianstad

Re: Solhaga tänker om

Inläggav darkg » 2016-10-13 00:32

solhaga skrev:Jag kommer naturligtvis inte bygga lådorna som just rektangulära lådor, det blir väl mycket parallella ytor.
De skall ju vara i hörn, så här gäller det att var lite innovativ vad det gäller lådans form, stagning mm.


Är de parallella ytorna ett verkligt bekymmer vid så låga frekvenser? Eller menar du "bara" estetiskt-möbelpraktiskt?
Don’t just do something, sit there.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-13 09:00

darkg skrev:
solhaga skrev:Jag kommer naturligtvis inte bygga lådorna som just rektangulära lådor, det blir väl mycket parallella ytor.
De skall ju vara i hörn, så här gäller det att var lite innovativ vad det gäller lådans form, stagning mm.


Är de parallella ytorna ett verkligt bekymmer vid så låga frekvenser? Eller menar du "bara" estetiskt-möbelpraktiskt?


Nej, det kanske inte de är? Menar mer att slippa sätta dit inre stag, det vill säga utforma så att lådans väggar är tillräckliga stag i sig.
Kommande från OB vill jag ju inte att lådans väggar skall varken primärstråla eller sekundärstråla.

Sedan är det ju bra med det estetiskt-möbelpraktiska också.

Baffelns är mindre kritisk, det viktiga är att lådans volym är enligt design och att luftfjädern inte har för mycket inre stag och veck emot sig.

Kanske så här för en 50x50x85 cm liggande 200 l låda, detta skulle då vara vänster fram:

Bild

Eller för en 300 l låda, 50x50x125 cm, uteffekten är ökad till klippningsgränsen:
(Och ja, jag ser att under 20 Hz finns inga reserver kvar. Det är dock ingen HT jag bygger.)

Bild

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-13 17:07

@HenrikE:
Jag har försökt ett tag, men det är några saker jag inte kommer till rätta med i det nya 3D-skriptet.

Jag har ju ett rektangulär element, men det verkar som om elementet blir dubbelt så högt jämfört med V2.
Det är ju lätt fixat, förstås. Det kanske har något att göra med att programmet nu inte speglar upp ena halvan.

3D-vyn verkar det inte bli något bra, bara ett rakt streck:
Bild

Sedan så verkar renderingarna inte stämma med V2 (V2 först, sedan 3D):
Bild Bild

Vad det gäller den horisontella spridningen så har jag inget att jämföra med, men detta borde väl vara rätt för ett 6 cm brett element:

Bild

Det vore förstås häftigt om man kunde rendera två källor och då med valbar toe-in.

Så om du har lust och tid så får du gärna titta på detta, det kan ju också vara skit bakom spakarna. Annars får jag försöka hacka vidare, vilket givetvis är roligt i sig.

Användarvisningsbild
HenrikE
 
Inlägg: 671
Blev medlem: 2009-02-11
Ort: Lund

Re: Solhaga tänker om

Inläggav HenrikE » 2016-10-13 22:15

solhaga skrev:Simulera spridning i 3D, du är verkligen veckans hjälte.

Har precis kört ditt 3D-skript. Så himla grymt!
Skall snarast anpassa det efter mina parametrar.

Fick ett lätt åtgärdat syntaxfel dock:

title(cstrcat(''Horisontell spridning, ',num2str(f), ' Hz'))


En fnutt för mycket bara innan Horisontell.

:D
Fast jag gör ju bara saker jag själv tycker är roliga..
Den extra fnutten kom nog när jag copy-past:ade in sista ändringarna lite för snabbt, klantigt.. Tyvärr kan jag inte redigera det gamla inlägget längre. Får lägga upp en ny version snart. En som klarar dipoler kanske?


solhaga skrev:@HenrikE:
Jag har försökt ett tag, men det är några saker jag inte kommer till rätta med i det nya 3D-skriptet.

Jag har ju ett rektangulär element, men det verkar som om elementet blir dubbelt så högt jämfört med V2.
Det är ju lätt fixat, förstås. Det kanske har något att göra med att programmet nu inte speglar upp ena halvan.

Hmm det har jag inte märkt av. Jag får rätt höjd i båda skripten. Speglingen gjorde bara att man slapp räkna fram undre halvan. Nu när skriptet går så mycket snabbare tog jag bort det så att man om man vill kan räkna på osymmetriska källor.

solhaga skrev:3D-vyn verkar det inte bli något bra, bara ett rakt streck:
[ Bild ]

Det ser rätt ut tycker jag.. 1 meter lång och 6cm bred blir ju typ ett streck. Den visar bara själva källan, inte hur den är placerad i rummet. Det kan ju vara en lämplig finess att lägga till i nästa version.

solhaga skrev:Sedan så verkar renderingarna inte stämma med V2 (V2 först, sedan 3D):
[ Bild ] [ Bild ]

Det är en rätt funamental skillnad mellan de två skripten. V1 och V2 räknar på en källa med bestämd höjd och oändlig bredd. Därför minskar bidraget från varje källpunkt med 1/r. I V3 väljer man alla måtten, och därför minskar bidraget från varje punkt med 1/r^2. Det gör att ljudtrycket minskar snabbare med avståndet (om man inte definierar en väldigt bred källa).
En sak till. Kör man höga frekvenser behöver man köra ganska tätt mellan källpunkterna för att få rätt resultat. Prova att minska dxs med en faktor två och kör igen. Om inget ändras i resultatet var det bra som det var. Men om det syns en skillnad var den första lite för grov.

solhaga skrev:Vad det gäller den horisontella spridningen så har jag inget att jämföra med, men detta borde väl vara rätt för ett 6 cm brett element:

[ Bild ]

Ja det der rimligt ut.

solhaga skrev:Det vore förstås häftigt om man kunde rendera två källor och då med valbar toe-in.

Kul idé! Det är lite meck med att få till det. Inget svårt men en liten övning i geometri och linjär algebra.

Användarvisningsbild
solhaga
 
Inlägg: 2629
Blev medlem: 2014-04-25

Re: Solhaga tänker om

Inläggav solhaga » 2016-10-14 00:04

Försöker svara utan multicitatnivån.

Jaha, det är källan man ser i första figuren. Borde den inte vara vriden 90 grader?
Denna källa är 1.4 hög och 0.06 bred, ser man verkligen det i figuren?

Bild

Så den vertikala tar även hänsyn till källans bredd. Insåg inte att den inte gjorde i V1 och V2.
Så V3 är närmare verkligheten nu, toppen.

Inser nu efter att ha gjort lite fler simuleringar, att det jag trodde var dubbla höjden är att de källpunkter som är i ändarna strålar radiellt de också.
Och på så sätt "spiller över" utanför själva elementets höjd.

Nästa

Återgå till DIY-forum


Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 18 gäster