FEM : 강성 매트릭스의 특이성


11

(σ2(x)u(x))=f(x),0x1
u(0)=u(1)=0u(0)=u(1)=0σ(x)σ0>0Au=fA

FEM 체계에 따라 문제를 최적화 문제로 줄입니다.

J(u)=(Au,u)2(f,u)minu
유한 요소 hk(x)
vk(x)={1(xxkh)2,x[xk1,xk+1]0,otherwise
어떤 대한 k=1,,n1 , 여기서 xk=hk , h=1n . 유한 요소 v0(x)vn(x) 도 비슷하게 도입되었습니다.

I는 numericaly 벡터 찾으려고 α 되도록 u(x)=k=0nαkvk(x) 최적화 문제를 해결한다. 우리가

J(u)=i=0nj=0nαiαj(Avi,vj)i=0n2αi(vi,f)=αTVα2αTbminα,
여기서 bi=(f,vi)Vi,j=(Avi,vj) 입니다. \ alpha에 대한 미분 후 V \ alpha = b를 α 수신 하지만 여기서 강성 행렬 V 는 단수입니다. 그래서 내가해야 할 일은 무엇입니까? 다른 유한 요소를 선택해야할까요?
Vα=b,
V

안녕, 님자, 당신은 정확한 해결책을 알고 테스트 문제가 있습니까? 그렇다면 VTVα=VTb 먼저 풀면 기준이 도메인 내에서 올바른지 테스트하고 모든 것이 올바르게 보이는 경우 BC가 행렬을 특이하게 만듭니다. 그러나 BC는 나에게 괜찮아 보인다.
Shuhao Cao

답변:


13

가능성의 순서로

  1. 잘못된 기준. 당신의 설명에서, 당신은 각 요소를 지원하는 정확히 두 개의 이차 함수를 가지고있는 것으로 보입니다. 그 공간은 하나의 파티션이 아니며 (연속적인 1 차 도함수) 이 아닙니다 . 예를 들어 2 차 방정식 시스템으로 문제를 줄이는 대신 4 차 문제를 직접 분별하려면 기준 이 필요 합니다. 점을 유의 기초하여 정확하게 모든 선형 함수를 재현 할 수 있어야한다.C1C1C1

  2. 경계 조건이 충분하지 않습니다. 널 공간을 계산하고 플로팅하면 분명히 알 수 있습니다.

  3. 조립이 잘못되었습니다. 요소에서 조립 된 순서로 맵을 확인하여 요소 방향을 바꾸지 않는 등의 예상되는지도 확인하십시오.

  4. 로컬 어셈블리가 잘못되었습니다. 1D에서는 요소 강성 행렬의 모양을 분석적으로 계산하고 (아마도 단순화 된 경우) 코드가 재현하는지 확인할 수 있습니다.


감사합니다. 1. 때문에 기준 이 필요하다고 생각합니다. . 그런 다음 경계 조건을 충족시키는 함수 만 고려하면 입니다. C2(Au,v)=01σ2(x)u(x)v(x)dxkerA={0}
Appliqué

1
기초 충분, 적분은 연속적 일 필요는 없다. 이차 미분의 경계 조건은 경계 적분이됩니다. 기준을 사용하여 4 차 문제를 직접 이산화 할 수 있지만 1 차 및 2 차 시스템에 대해 불연속 Galerkin 방법과 같이 점프 항을 통합해야합니다. 나쁜 방법은 아니지만 1D에서는 불필요하게 복잡하지 않습니다. 연속성 순서 (예 : 스플라인)로베이스를 구성하기가 쉽기 때문입니다. 이 문서 는 " DG" 의 예입니다 . C1C0C0
Jed Brown

확인. 내 기초 보정 지금 에서 및 입니다. 이제 입니다. 그러나 방법은 여전히 ​​작동하지 않습니다. vk(x)=cos2(π2h(xxi))[xi1,xi+1]i=1,,n1C1
Appliqué

기초하여 선형 함수 재현 할 수 있어야하지만, 이것이 불가능. 문제를 해결 한 후 적분이 올바르게 수행되고 있는지 확인한 다음 경계 조건을 확인하십시오. C1
Jed Brown

0

분명히 문제에는 ODD 주문 파생 상품이 있습니다. 더 큰 Péclet 수의 경우 보다 구체적으로 강성 매트릭스는 '정밀한'형태를 유지하지 못하여 조립 중에 0을 생성하므로 솔루션 플롯의 진동으로 눈에 띄는 단수 또는 매우 작은 결정 요인을 얻습니다.

이러한 종류의 문제에 대한 해결책은 다른 방법들 중에서도 페널티를 사용하는 것입니다. 보다 구체적으로 이것을 Petrov-Galerkin method 라고 합니다.

영어 실력이 좋지 않아서 죄송합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.