libfftw ¿¡¼­ fft ¿¬»ê °á°úÀÇ ±æÀÌ ¹®ÀÇ

   Á¶È¸ 1793   Ãßõ 0    

쪽팔리면 질문하지 맙시다. 소중한 답변 댓글을 삭제하는건 부끄러운 일 입니다 


libfftw를 이용하여 주파수 분석을 하려는데


fftw_plan_dft_r2c_1d() 함수에

N개의 입력을 넣었다면

N/2 + 1 개의 출력이 나옵니다.


DFT에 의해서 N/2가 되는건 알겠는데 1은 어떤 정보가 나오는지 모르겠습니다.


혹시 +1의 신호가 어떤 것인지 참고할 만한 문서가 있을까요?



+

이미지 추가


딸 다섯 아들 하나 아빠 (큰 딸, 작은 딸, 왕큰 딸, 앵무새, 암 뭉뭉이, 수 뭉뭉이) - minimonk.net
ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¹«¾Æ 2023-04
¾î.. DFT ¶ó¸é ÀÔ·Â ¸¸Å­ Ãâ·ÂÀÌ ³ª¿ÃÅÙµ¥¿ä?
     
±¸Â÷´Ï 2023-04
¶óÀ̺귯¸®¸¶´Ù ´Ù¸¥°ÇÁö fftw´Â N/2+1·Î ³ª¿Â´Ù°í Çϳ׿ä


Here, n is the ¡°logical¡± size of the DFT, not necessarily the physical size of the array. In particular, the real (double) array has n elements, while the complex (fftw_complex) array has n/2+1 elements (where the division is rounded down). For an in-place transform, in and out are aliased to the same array, which must be big enough to hold both; so, the real array would actually have 2*(n/2+1) elements, where the elements beyond the first n are unused padding. (Note that this is very different from the concept of ¡°zero-padding¡± a transform to a larger length, which changes the logical size of the DFT by actually adding new input data.) The kth element of the complex array is exactly the same as the kth element of the corresponding complex DFT. All positive n are supported; products of small factors are most efficient, but an O(n log n) algorithm is used even for prime sizes.

https://www.fftw.org/fftw3_doc/One_002dDimensional-DFTs-of-Real-Data.html#One_002dDimensional-DFTs-of-Real-Data

¹ø¿ªÀ» µ¹·ÁºÁµµ ¹«½¼ ¼Ò¸®ÀÎÁö ¸ð¸£°Ú½À´Ï´Ù
          
piloteer 2023-04
½Ç¼ö¸¦ fftÇϸé N/2+1°³¸¸ À¯È¿ÇÑ Á¤º¸ÀÌ°í, º¹¼Ò¼ö¸¦ fftÇϸé N°³ ÀüºÎ ´Ù À¯È¿ÇÑ Á¤º¸ÀÔ´Ï´Ù. fftw´Â ½Ç¼ö¶ó¸é ¾Ë¾Æ¼­ N/2+1°³¸¸ °è»êÇϳª º¾´Ï´Ù. ±×·¸°Ô ÇÏ´Â ÆíÀÌ ¿¬»ê È¿À²ÀÌ ´õ ÁÁ±ä ÇÒ °Ì´Ï´Ù.
               
±¸Â÷´Ï 2023-04
Çö½ÇÀÇ °ªÀ» º¹¼Ò¼ö·Î ġȯÀ» Çϴ¹ýÀ» ã¾Æ ºÁ¾ß°Ú³×¿ä
¾Æ¹«Æ° ½Ç¼ö(real number)¸¦ DFT Çϸé N/2+1·Î ³ª¿À´Âµ¥
0Àº ÀÌ»óÇÏ°Ô Å« °ªÀÌ Çϳª Æ¢¾î³ª¿À°í 1~N/2+1 ±îÁö °ªÀÌ ³ª¿À´Â °Í °°Àºµ¥
0ÀÌ FFT ¿¬»ê¿¡ ÀÇÇÑ °ªÀ̳Ä(Áï, 0Hz¿¡ ´ëÇÑ °è»ê °á°ú) ÀÌ·±°Ô ±Ã±ÝÇÕ´Ï´Ù.

ÀÏ´Ü r2c ÇÔ¼ö¿¡ r°ªÀ¸·Î 0~1 »çÀÌ·Î normalize Çߴµ¥µµ
dft °á°úÀÇ 0 ¹ø À妽º¿¡ 900,000 ±ÙóÀÇ °ªÀÌ µé¾î°¡´Â°É º¸¸é.. ¿øº» °ªÀ» ¸ð¸£´Âµ¥ ¾ò¾î°É¸° °ªÀÎÁö(¿øº» µ¥ÀÌÅÍ°¡ +-900,000 ¹üÀ§·Î ³ª¿È)
¾î¶»°Ô Çؼ®ÇØ¾ß ÇÒÁö ¸ð¸£°Ú½À´Ï´Ù.
                    
¹«¾Æ 2023-04
0¹ø À妽º´Â ÀÔ·Â ±¸°£ °ªµéÀÇ Æò±Õ°ªÀ̶ó°í º¸¸é µË´Ï´Ù. DC ¶ó°í ºÎ¸£´Â...
(¿øº» µ¥ÀÌÅÍ°¡ +-900,000 ¹üÀ§·Î ³ª¿È) ÀÌ·±µ¥ 0 ¹ø À妽º¿¡ 900,000 ±ÙóÀÇ °ªÀÌ µé¾îÀÖ´Ù? ¹º°¡ ÀÌ»óÇѵ¥¿ä
                         
±¸Â÷´Ï 2023-04
Àúµµ Çò°¥·Á¼­ ´Ù½Ã Á¶°Ç Àâ°í Å×½ºÆ® ÇغÁ¾ß ÇÒ °Í °°½À´Ï´Ù.
À̹ÌÁö Ãß°¡Çߴµ¥ ¿øº» ½ÅÈ£´Â À§¿Í °°°í
¾Æ·¡´Â fftw ¶óÀ̺귯¸®·Î ó¸®ÇÑ °á°úÀÔ´Ï´Ù. 0¹ø° °ªÀÌ ÀÌ»óÇÏ´Ù°í »ý°¢Çؼ­ 0À¸·Î ó¸®Çß°í
fft ÀԷ°ªÀº 800,000 / 16777216(24bit) ·Î ³ª´©¾î¼­ 0~1 »çÀÌÀÇ ½Ç¼ö·Î º¯È¯ÇÏ¿´½À´Ï´Ù.
±×·¯´Ï±î Ãâ·ÂÀÌ º¹¼Ò¼ö·Î ³ª¿À´Âµ¥
ai+b ¿¡¼­
sqrt(a^2 + b^2) ·Î amplitude·Î º¯È¯ÇÑ´Ù°í Çؼ­ Çߴµ¥ ¼ö½ÄÀÌ ÀÌ»óÇÑ°ÇÁö  °­µµ°¡ 975,000 Á¤µµ·Î ³ª¿À³×¿ä
º¹¼Ò¼öÀÇ Å©±â °è»ê½ÄÀÌ À߸øµÇ¾ú´ÂÁö ´Ü°èº°·Î °ËÁõÇغÁ¾ß ÇÒ °Í °°½À´Ï´Ù ¤Ð¤Ð
                    
piloteer 2023-04
ÀÏ´Ü ¹«¾Æ´Ô ¸»¾¸¿¡ µ¿ÀÇÇÏ°í¿ä, µ¡ºÙÀÌÀÚ¸é fft¸¦ ÇÏ½Ç °æ¿ì Parseval's theoremÀ̶õ °É ¾²¸é ´ëÃæ ¾î´ÀÁ¤µµ°¡ Á¤»óÀûÀÎ °ªÀÇ ¹üÀ§ÀÎÁö¸¦ ¾Ë ¼ö ÀÖ½À´Ï´Ù.
http://www.ktword.co.kr/test/view/view.php?no=3725
                         
±¸Â÷´Ï 2023-04
ÁÁÀº ³»¿ë °¨»çÇÕ´Ï´Ù.
õõÈ÷ Àоî´Â º¸°ÚÁö¸¸.. Àü±â/ÀüÀÚ Àü°øÀÌ ¾Æ´Ï¶ó ÀÌÇØÇϱ⠽±Áö°¡ ¾Ê³×¿ä ¤Ð¤Ð
     
±¸Â÷´Ï 2023-04
ÇÔ¼ö¸¦ À߸ø½è³ª r2c·Î ÇÏ°í Àִµ¥ c2c³ª r2r·Î ÇؾßÇϳª °í¹ÎÁßÀ̱ä ÇÕ´Ï´Ù.
i0 is 0 because you're using real data , so it isn't stored in out.

stackoverlfow º¸¸é À§¿Í °°ÀÌ ½áÀִµ¥ ±×³É 1~N/2+1 ±îÁö ¾²¸é µÉ °Í °°³×¿ä
°¨»çÇÕ´Ï´Ù.
¹«¾Æ 2023-04
For a real-to-complex transform you get N / 2 + 1 complex outputs for N real inputs (the redundant symmetric outputs are not generated).

The 0 Hz component is in bin 0.

This is all covered in the FFTW manual.

¶ó´Â ¸»ÀÌ ÀÖ´Â °Å º¸´Ï +1 Àº DC ¼ººÐ À̳׿ä. Á¤È®È÷´Â 0 ¹ø° À妽º°ÚÁÒ.

"complex outputs for N real inputs" Ãâ·ÂÀÌ º¹¼Ò¼ö¶ó¼­.
     
±¸Â÷´Ï 2023-04
¼ÖÂïÈ÷ º¹¼Ò¼ö Ãâ·Â°ú 0¹ø° °ªÀÌ ¹«½¼ ¿¬°üÀÌ ÀÖ´ÂÁö ¸ð¸£°Ú½À´Ï´Ù.

À§´ëÇϽÅ(?) chatGPT ´Ô²²¼­´Â ¾Æ·¡ÀÇ ´ë´äÀ» ³»¾îÁּ̽À´Ï´Ù.
´Ù¸¸.. stackoverflow³ª À̰ųª.. ¹ø¿ªÇØÁ൵ ÀÌÇظ¦ ¸øÇÏ°Ú´Ù´Â°Ô ÇÔÁ¤À̳׿ä.

FFTW ¶óÀ̺귯¸®¿¡¼­ Fast Fourier Transform (FFT)¸¦ Àû¿ëÇϸé, ±æÀÌ°¡ NÀÎ ½Ç¼ö ÀÔ·Â µ¥ÀÌÅÍ¿¡ ´ëÇØ º¹¼Ò¼ö Ãâ·Â µ¥ÀÌÅÍ N/2+1°³°¡ »ý¼ºµË´Ï´Ù. ÀÌ´Â FFT ¾Ë°í¸®ÁòÀÌ µ¿ÀÛÇÏ´Â ¹æ½Ä ¶§¹®ÀÔ´Ï´Ù.

FFTW¿¡¼­ »ç¿ëµÇ´Â FFT ¾Ë°í¸®ÁòÀº "real-to-complex" FFT¶ó°í ºÒ¸®¸ç, ½Ç¼ö°ª ÀÔ·Â µ¥ÀÌÅ͸¦ º¹¼Ò¼ö°ª Ãâ·Â µ¥ÀÌÅÍ·Î º¯È¯ÇÕ´Ï´Ù. ÀÌ ¾Ë°í¸®ÁòÀº ½Ç¼ö°ª ½ÅÈ£ÀÇ Çª¸®¿¡ º¯È¯ÀÇ ´ëĪ¼º(symmetric) Ư¼ºÀ» È°¿ëÇÕ´Ï´Ù. ±¸Ã¼ÀûÀ¸·Î, ½Ç¼ö°ª ½ÅÈ£ x(t)ÀÇ Çª¸®¿¡ º¯È¯ X(f)Àº X(-f) = conj(X(f)) ¶ó´Â º¹¼Ò¼ö °ø¾×´ëĪ¼º(complex-conjugate symmetric)À» ¸¸Á·ÇÕ´Ï´Ù. ¿©±â¼­ "conj"´Â º¹¼Ò¼ö °ø¾×(conjugate)¸¦ ÀǹÌÇÕ´Ï´Ù.

ÀÌ ´ëĪ¼º Ư¼º ¶§¹®¿¡ FFT ¾Ë°í¸®ÁòÀÇ Ãâ·Â°ª Áß Àý¹ÝÀº Áߺ¹µÇ´Â °ªÀ̸ç, ³ª¸ÓÁö Àý¹ÝÀº ÀÌ Áߺ¹µÈ °ªµé·ÎºÎÅÍ °è»êµÉ ¼ö ÀÖ½À´Ï´Ù. ±¸Ã¼ÀûÀ¸·Î, 0ºÎÅÍ N/2±îÁöÀÇ ÁÖÆļö ´ë¿ª¿¡¼­´Â °íÀ¯ÇÑ Ãâ·Â°ªÀÌ Á¸ÀçÇϸç, N/2+1ºÎÅÍ N-1±îÁöÀÇ ÁÖÆļö ´ë¿ª¿¡¼­´Â ´ëÀÀÇÏ´Â 1ºÎÅÍ N/2-1±îÁöÀÇ ÁÖÆļö ´ë¿ªÀÇ º¹¼Ò¼ö °ø¾×°ªÀ» °è»êÇÏ¿© ±¸ÇÒ ¼ö ÀÖ½À´Ï´Ù.

µû¶ó¼­ FFTW´Â ¿¬»ê ½Ã°£°ú ¸Þ¸ð¸®¸¦ Àý¾àÇϱâ À§ÇØ, 0ºÎÅÍ N/2±îÁöÀÇ ÁÖÆļö ´ë¿ª¿¡ ´ëÇÑ °íÀ¯ÇÑ Ãâ·Â°ª°ú, NÀÌ Â¦¼öÀÎ °æ¿ì ÁÖÆļö N/2¿¡ ´ëÇÑ Ãâ·Â°ªÀ» °è»êÇÕ´Ï´Ù. ÀÌ·¸°Ô °è»êµÈ Ãâ·Â°ªÀÇ ÃÑ °³¼ö´Â N/2+1°³°¡ µË´Ï´Ù.

0Hz ¶ó°í Çϸé AC°¡ ¾Æ´Ñ DC ¼ººÐÀ¸·Î Àüü ½ÅÈ£°¡ ¸¸¾à +2000 ¸¸Å­ ¶°ÀÖ´Ù¸é 2000ÀÌ ±â·ÏµÇ´Â°É±î¿ä?
          
¹«¾Æ 2023-04
piloteer ´ñ±Û ´ë·Î ÀÌÇØÇÏ½Ã¸é µË´Ï´Ù.

>>0Hz ¶ó°í Çϸé AC°¡ ¾Æ´Ñ DC ¼ººÐÀ¸·Î Àüü ½ÅÈ£°¡ ¸¸¾à +2000 ¸¸Å­ ¶°ÀÖ´Ù¸é 2000ÀÌ ±â·ÏµÇ´Â°É±î¿ä?
³×.
               
±¸Â÷´Ï 2023-04
N°³°¡ µé¾î¿ÔÀ¸´Ï N/2 ÁÖÆļö ±îÁöÀÌ°í
0 + N/2 ÁÖÆļö ´Ï±î ÃÑ N/2+1 °³À̸ç
0Hz¿¡´Â ½ÅÈ£ÀÇ DC ¼ººÐ(0Hz) ³»¿ëÀÌ ÀÖ´Ù°í ÀÌÇØÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù.

°¨»çÇÕ´Ï´Ù!
newretrowave 2023-04
ÁÖÆļö 0 ¼ººÐ ¾Æ´Ñ°¡¿ä? ¿ø·¡ ÀÔ·Â ½ÅÈ£µéÀÇ Æò±Õ °ª
     
±¸Â÷´Ï 2023-04
rms °ªÀÌ 0 Hz·Î ±×·³ Ç¥½ÃµÇ´Â°Ç°¡¿ä?
³Ê¹« ¾î·Æ½À´Ï´Ù ¤Ð¤Ð
          
¹«¾Æ 2023-04
¾Æ´¢. rms ´Â Root Mean Squar °ªÀ» ¸»ÇÏ´Â °ÍÀÌ°í ÀÌ´Â AC ¼ººÐÀÇ ½ÅÈ£ Å©±â¸¦ Ç¥½ÃÇÕ´Ï´Ù. ¿ì¸®°¡ AC 220V ¶ó°í Ç¥ÇöÇÏ´Â °ªÀº 60Hz ÀÇ Á¤ÇöÆÄ¿¡ ´ëÇÏ¿© rms °ªÀ¸·Î 220V °¡ ³ª¿Â´Ù (peak °ªÀÌ ¾Æ´Ï¶ó).. ¹¹ ±×·± ÀǹÌÀÔ´Ï´Ù. 0HzÀÎ DC ¶ûÀº ´Þ¶ó¿ä.
               
±¸Â÷´Ï 2023-04
Å©Èí.. ÀÏ°³ SW°³¹ßÀÚÀÏ »ÓÀε¥, ´Ù¸¥¿µ¿ª ³»¿ëµéÀÌ ¸¶±¸ ¼¯ÀÌ´Ï Á¤½ÅÀÌ Çϳªµµ ¾ø³×¿ä.
³ªÁß¿¡ ´Ù½Ã ÇÁ·Î±×·¥ ¼öÁ¤Çؼ­ µ¹·Áº¸°í ºÐ¼®Çؼ­ Ãß°¡±Û ¾²µµ·Ï Çغ¸°Ú½À´Ï´Ù.

°¨»çÇÕ´Ï´Ù
                    
¹«¾Æ 2023-04
´Ù¸¥ ¿µ¿ªµéÀ» ÀÌÇØÇÏ°í §´Ù¸é ÀÏ°³ SW °³¹ßÀÚ¿¡¼­ ÀÏ°³¸¦ ¶§°í Àü¹®À» ºÙÀÌ°Ô µÇ°ÚÁÒ. ^^
3Ãà Á¦¾î¸¦ ÇÏ¸ç ¹°¼º ÃøÁ¤ÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÑ ÀûÀÌ Àִµ¥ (¿©ÀüÈ÷ ¾÷±×·¹À̵åÇϸç ÆǸÅÁßÀÎ)
ÀÇ·Ú¸¦ ÁֽŠ´ëÇ¥´ÔÀÌ Àúº¸°í.. ¿Ø¸¸ÇÑ È­Çаú ´ëÇпø»ýº¸´Ù ³µ´Ù°í ÇÏ´õ±º¿ä. ÃøÁ¤ ¹× ºÐ¼® ÅøÀ» ¸¸µå´Â °ÍÀε¥ ³»¿ëÀ» ÀÌÇØ ¸øÇϸé ÅøÀ» ¸¸µéÁö ¸øÇؼ­..
                         
±¸Â÷´Ï 2023-04
Á÷±ÞÀÌ ÀÖ´Â »ç¶÷µé Áß¿¡´Â °¡Àå ¾î·Á¼­ (!)
Ç×»ó ´Ù¸¥ ºÐ¾ß¸¦ ÀÌÇØÇÏ°Ô ÇÏ´Â ¿ªÇÒÀ» °­Á¦ ´çÇÏ´Â ´À³¦ÀÔ´Ï´Ù.

¾ÆÁ÷µµ ³¡³ªÁö ¾ÊÀº ·¹ÀÌÀú ºÐ±¤±â¶û, Áøµ¿ µ¥ÀÌÅÍ È¹µæ ÇÏ¿© ÁÖÆļö ºÐ¼®ÇÏ´Â °Í ±îÁö ÀÌÇØÇÏ·Á´Ï ¸Ó¸®°¡ ¾ÆÇÁ³×¿ä.
ÇΰèÀ̱ä Çѵ¥.. Àü»êÇÐ °è¿­ Ãâ½ÅÀÌ¶ó ¿©±â ºÐµé ´ëºÎºÐÀÌ Àü±â/ÀüÀÚ Ãâ½ÅÀε¥
Á¤ÀÛ ¶óÀ̺귯¸® ½áº»»ç¶÷Àº ¾ø¾î¼­ Á¦°¡ ¿­½ÉÈ÷ ±¸¸£´Â ÁßÀÔ´Ï´Ù. µ¥±¸¸£¸£¸£¸£

+
°¥·Á³ª°¬À» ¹«¸íÀÇ È­Çаú ´ëÇпø»ý¿¡°Ô ¹¬³äÀ»..
                         
¹«¾Æ 2023-04
±×¸²À» º¸´Ï.. ¹«Ã´ Àç¹ÌÀÖ´Â ÀÏÀ» ¸ÃÀ¸¼Ì³×¿ä. È­ÀÌÆÃ.
¿ØÁö Signal Processing À̶ó´Â ¿ø¼­¸¦ Çϳª Á¤µ¶ÇÏ°í ÀÖÀ» ¹Ì·¡°¡ º¸ÀÔ´Ï´Ù. ÈåÈåÈå..
                         
±¸Â÷´Ï 2023-04
¾ÆÇÏÇÏÇÏÇÏ À̰Ŷû º´ÇàÇؼ­ °ÅÀÇ ¸¶¹«¸®(+¹«ÇÑ ¿¬Àå) ÁßÀÎ TDLAS ¶ó´Â ¾Çµ¶ÇÑ ³à¼®µµ ÀÖ½À´Ï´Ù ÇÏÇÏÇÏ ¤Ð¤Ð
¸¸µé´Ù º¸´Ï À¥ ¿À½Ç·Î½ºÄÚÇÁ³×¿ä
¹«¾Æ 2023-04
À×? ÷ºÎÇÑ »çÁøÀ» º¸¸é DFT Àß µÇ¾ú³×¿ä.
ƯÁ¤ ÁÖÆļö¿¡¼­ ÇÇÅ©°¡ Àß ¶ß³×¿ä. Á¤ÇöÆĸ¦ ³ÖÀ¸¸é Àú·¸°Ô ³ª¿ÀÁÒ.
     
±¸Â÷´Ï 2023-04
0 ¹ø À妽º¿¡ ÀÌ»óÇÑ °ªÀÌ ³ª¿Í¼­ ÀÓÀÇ·Î 0À¸·Î ó¸®ÇÏ°í ±×¸°°Å¶ó ÇÇÅ©°¡ ¾È¶ß´Â °ÅÁö ½ÇÁ¦·Î´Â ¾î¶² °ªÀÌ ³ª¿À±ä Çߴµ¥
¾î¶² °ªÀÎÁö ÀÌÇظ¦ ¸øÇؼ­ q/a¿¡ ¿Ã¸®°Ô µÇ¾ú³×¿ä
          
¹«¾Æ 2023-04
±×·¸´Ù¸é ÀԷ½ÅÈ£¸¦ 0~1 ·Î normalize ÇÏ´Â°Ô µ¿ÀÛ¾ÈÇѵí...
Àß Á¤±ÔÈ­ Çß´Ù¸é ÁÖÆļö°¡ ÀÖ´Â ºÎºÐÀÇ Å©±â°ªµµ 1À» ³ÑÁö ¾ÊÀ»ÅÙµ¥
               
±¸Â÷´Ï 2023-04
Â÷±ÙÂ÷±Ù Çѹø ºÁ¾ß°Ú½À´Ï´Ù. °¨»çÇÕ´Ï´Ù!
ÀÏ´ÜÀº double ÇüÀÌ´Ù º¸´Ï amplitude¸¦ int ÇüÀ¸·Î Ç¥ÇöÇÏ·Á°í * 1000 ÇØµÐ°É ±î¸¶µæÀÌ ÀØ°í ÀÖ¾ú½À´Ï´Ù. ÇÏÇÏÇÏÇÏ ¤Ð¤Ð


QnA
Á¦¸ñPage 396/5679
2015-12   1478910   ¹é¸Þ°¡
2014-05   4942100   Á¤ÀºÁØ1
2021-11   1793   ÇÎÅ©Á©¸®
2022-07   1793   ¹Ì¼ö¸Ç
2021-10   1794   ¿µ»êȸ»ó
2021-06   1794   ·ç»ß¸®
2022-05   1794   º´µû°³´Ô
2022-04   1794   ¸¶ºñ¿Ã¶ó
2021-11   1794   lastbird10
2023-01   1794   ¿¤¾²¸®
2022-06   1794   ¹«¾Æ
2023-04   1794   ±¸Â÷´Ï
2023-03   1794   ¾ç½Ã¿­
2022-06   1795   µþ±á²¿¸¶
2023-06   1795   ¸í¶û
2023-11   1795   ¼­¿ïI±èµ¿¼ö
2023-03   1795   °ËÀºÄá
2022-08   1795   mads
2021-07   1795   ±èÁ¦¿¬
2022-02   1795   JayKo
2023-07   1795   ¹Ì´ã
2023-11   1795   Á߸³±â¾î¿ÀÅä