It looks like you're new here. If you want to get involved, click one of these buttons!

- 140.5K All Categories
- 104.3K Programming Languages
- 6.4K Assembler Developer
- 1.8K Basic
- 39.7K C and C++
- 4.2K C#
- 7.9K Delphi and Kylix
- 4 Haskell
- 9.6K Java
- 4.1K Pascal
- 1.3K Perl
- 1.9K PHP
- 503 Python
- 47 Ruby
- 4.3K VB.NET
- 1.6K VBA
- 20.8K Visual Basic
- 2.6K Game programming
- 308 Console programming
- 88 DirectX Game dev
- 1 Minecraft
- 108 Newbie Game Programmers
- 2 Oculus Rift
- 8.9K Applications
- 1.8K Computer Graphics
- 726 Computer Hardware
- 3.4K Database & SQL
- 520 Electronics development
- 1.6K Matlab
- 627 Sound & Music
- 254 XML Development
- 3.2K Classifieds
- 189 Co-operative Projects
- 171 For sale
- 189 FreeLance Software City
- 1.9K Jobs Available
- 598 Jobs Wanted
- 199 Wanted
- 2.9K Microsoft .NET
- 1.7K ASP.NET
- 1.1K .NET General
- 2.9K Miscellaneous
- 3 Join the Team
- 2 User Profiles
- 352 Comments on this site
- 56 Computer Emulators
- 1.7K General programming
- 136 New programming languages
- 598 Off topic board
- 160 Mobile & Wireless
- 34 Android
- 124 Palm Pilot
- 334 Multimedia
- 151 Demo programming
- 183 MP3 programming
- 0 Bash scripts
- 15 Cloud Computing
- 52 FreeBSD
- 1.7K LINUX programming
- 364 MS-DOS
- 0 Shell scripting
- 318 Windows CE & Pocket PC
- 4.1K Windows programming
- 877 Software Development
- 401 Algorithms
- 67 Object Orientation
- 82 Project Management
- 88 Quality & Testing
- 232 Security
- 7.5K WEB-Development
- 1.8K Active Server Pages
- 61 AJAX
- 2 Bootstrap Themes
- 55 CGI Development
- 19 ColdFusion
- 222 Flash development
- 1.4K HTML & WEB-Design
- 1.4K Internet Development
- 2.2K JavaScript
- 33 JQuery
- 283 WEB Servers
- 107 WEB-Services / SOAP

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Shadovv
Posts: **31**Member

in Algorithms

Does anybody know if this is possible.

Equation as follows.

aSin(20degrees) + bSin(40degrees) + cSin(60degrees) = answer

If the anwser was given in decimal form, is it possible to derive what 'a', 'b', and 'c' are ?, since we already know what the phases are for each.

I recall something about frequency division multiplexing using fast fourier transforms or something like that. But can't quite wrap my head around it.

If there was one signal say 'aSin(20degrees)', then it's simply,

- multiplying the signal with a reference signal that's in phase with signal 'a' with unity amplitude, in this case Sin(20degrees).

- take the average of each resulting product

- double the average, and you have the answer to 'a'.

But what about if it's more then one signal ?

like the one mentioned above,

aSin(20degrees) + bSrin(40degrees) + .....etc

thanks in advance.

Equation as follows.

aSin(20degrees) + bSin(40degrees) + cSin(60degrees) = answer

If the anwser was given in decimal form, is it possible to derive what 'a', 'b', and 'c' are ?, since we already know what the phases are for each.

I recall something about frequency division multiplexing using fast fourier transforms or something like that. But can't quite wrap my head around it.

If there was one signal say 'aSin(20degrees)', then it's simply,

- multiplying the signal with a reference signal that's in phase with signal 'a' with unity amplitude, in this case Sin(20degrees).

- take the average of each resulting product

- double the average, and you have the answer to 'a'.

But what about if it's more then one signal ?

like the one mentioned above,

aSin(20degrees) + bSrin(40degrees) + .....etc

thanks in advance.

About & Contact / Terms of use / Privacy statement / Publisher: Lars Hagelin

Programmers Heaven articles / Programmers Heaven files / Programmers Heaven uploaded content / Programmers Heaven C Sharp ebook / Operated by CommunityHeaven LLC

© 1997-2013 Programmersheaven.com - All rights reserved.

## Comments

748Member: Does anybody know if this is possible.

:

: Equation as follows.

:

: aSin(20degrees) + bSin(40degrees) + cSin(60degrees) = answer

:

: If the anwser was given in decimal form, is it possible to derive what 'a', 'b', and 'c' are ?, since we already know what the phases are for each.

: I recall something about frequency division multiplexing using fast fourier transforms or something like that. But can't quite wrap my head around it.

: If there was one signal say 'aSin(20degrees)', then it's simply,

: - multiplying the signal with a reference signal that's in phase with signal 'a' with unity amplitude, in this case Sin(20degrees).

: - take the average of each resulting product

: - double the average, and you have the answer to 'a'.

:

: But what about if it's more then one signal ?

: like the one mentioned above,

: aSin(20degrees) + bSrin(40degrees) + .....etc

:

:

: thanks in advance.

:

From a maths point of view you could end up with more than one solution as even if a,b and c here are WHOLE numbers then it is like saying:->

(2*40) + (3*50) + (4*60)= 80+150+240=470

From the 470 here you could derive a few numbers like:->

4+6+460 and again with

400+50+20 etc

giving lots of results.

You could eliminate some results using

SIMULTANEOUS EQUATIONS methods maybe in a loop?

Like the following

1) a+b=12

2) a+b+c=12

3) a+b+c+d=12

4) a+b+c+d+e=12

Find one term by adding up the rest and solving via addition+subtraction.

I.E.

In 1) above If a=5 then b=12-5=7

In 2) above add the b+c to get a) if you know the answer.

In 3) above add the b,c&d to get a) if you know the answer

In 4) add b,c,d,e to get a) if you know the answer.

If you can create a simultaneous pair of equations from your results then you can produce what a,b,c etc are?

E.G. To take your problem:-

aSin(20degrees) + bSin(40degrees) + cSin(60degrees) = answer

If a=2 b=3 c=4 then answer=6.076504731

If a became 3 the 2nd and 3rd term would total a higher value

But if the answer remains the same then b or/and c are reduced.

Like saying:->

1) 2a+3b+4c=d

2) 3a+b+c=d

Muliply 1) through by -1 giving:-> -2a+ -3b+ -4c = -d

-2a+ -3b+ -4c = -d

+3a+ b +c = d

Adding gives:->

a -2b - 3c = 0 so a=2b+3c

You could use the simultaneous equtions idea maybe to get the other results or graphing analysis to see where straight line equations intersect?

Like

2a+3b=12 where a=3,b=2 or a=2,b=8/3 Plot a againt b

3x+2y=12 Plot x againt y

Where ever the lines cross solves a simultaneous equation.

If this works for straight lines it would work for SIN or COS wave diagrams I guess. Would help you to eliminate some of the values maybe?

Just an idea though if it is of any use?

You would need a clever routine to deal with an ever increasing number of terms or "waveforms" though.

Plus simple or complex wavforms when overlapped cross at multiple points so there is more than one solution to your problem I guess.

Hope this helps. :-)

- Spam

0 · Vote Down Vote Up · Share on Facebook19Member1337 d00d

- Spam

0 · Vote Down Vote Up · Share on Facebook