전산 과학

컴퓨터를 사용하여 과학적 문제를 해결하는 과학자를위한 Q & A

10
유용하고 빠른 C ++ 매트릭스 라이브러리에 대한 권장 사항
누구나 사용할 수 있고 빠른 C ++ 매트릭스 라이브러리에 대한 권장 사항이 있습니까? 사용 가능한 의미는 다음과 같습니다. 매트릭스 객체에는 직관적 인 인터페이스가 있습니다 (예 : 인덱싱하는 동안 행과 열을 사용할 수 있음) LAPACK과 BLAS로 할 수있는 매트릭스 클래스로 무엇이든 할 수 있습니다 배우고 사용하기 쉬운 API Linux에 설치하기가 상대적으로 ...

14
과학 연구 코드에 대한 단위 테스트를 작성하는 것이 가치가 있습니까?
자동화 된 회귀 테스트 세트를 포함하여 완전한 프로그램 (예 : 수렴 테스트)을 검증하는 테스트를 사용하는 것의 가치를 확신 합니다 . 프로그래밍 서적을 읽은 후에 단위 테스트 (즉, 단일 함수의 정확성을 확인하고 문제를 해결하기 위해 전체 코드를 실행하지 않는 테스트)를 작성해야한다는 잔소리를 들었 습니다. . 그러나 단위 테스트가 항상 과학적 코드 ...

10
GPU 컴퓨팅에는 어떤 문제가 있습니까?
그래서 나는 함께 일하는 문제가 직렬에서 가장 좋은 문제이며 병렬로 관리 할 수있는 좋은 머리를 가지고 있습니다. 그러나 지금 당장은 CPU 기반 계산으로 가장 잘 처리되는 것과 GPU로 오프로드해야 할 것에 대해 잘 모릅니다. 나는 기본적인 질문을 알고 있지만 검색의 많은 부분은 왜 또는 다소 모호한 규칙을 정당화하지 않고 서로를 ...
84 gpu 

17
파이썬을위한 고품질 비선형 프로그래밍 솔버가 있습니까?
볼록하지 않은 전역 최적화 문제를 해결해야 할 몇 가지 문제가 있습니다. 현재 MATLAB의 Optimization Toolbox (특히 fmincon()algorithm = 사용 'sqp')를 사용하고 있습니다. 그러나 내 코드의 대부분은 Python이며 Python에서도 최적화를하고 싶습니다. 파이썬 바인딩과 경쟁 할 수있는 NLP 솔버가 fmincon()있습니까? 반드시 비선형 평등과 불평등 제약을 다룰 수있다 사용자가 Jacobian을 제공하도록 요구하지 않습니다. ...

6
포트란 컴파일러는 실제로 얼마나 나을까?
이 질문은 최근 " C ++ vs Fortran for HPC " 에 대한 답변에서 최근에 제기 된 두 가지 토론의 확장입니다 . 그리고 그것은 질문보다 조금 더 도전입니다 ... Fortran에 유리한 주장 중 하나는 컴파일러가 더 좋다는 것입니다. 대부분의 C / Fortran 컴파일러는 동일한 백엔드를 공유하므로 두 언어에서 의미 적으로 ...
74 fortran  c  blas  benchmarking 

10
내 코드의 직렬 성능을 향상시키기위한 좋은 전략은 무엇입니까?
나는 계산 과학 분야에서 일하고 있으며 결과적으로 많은 코드의 과학적 처리량을 높이고 이러한 코드의 효율성을 이해하려고 노력하는 데 사소한 시간을 소비합니다. 작업중인 소프트웨어의 성능과 가독성 / 재사용 성 / 유지 보수성 간의 균형을 평가하고 성능을 발휘할시기라고 결정했다고 가정 해 보겠습니다. 또한 플롭 / s 및 메모리 대역폭 측면에서 문제에 대한 ...

12
HPC 용 C ++ 및 포트란
내 전산 과학 박사 프로그램에서 우리는 거의 독점적으로 C ++ 및 Fortran에서 일하고 있습니다. 일부 교수는 다른 교수보다 선호하는 것 같습니다. 어떤 상황에서 어떤 것이 더 낫거나 어떤 것이 더 나은지 궁금합니다.
56 hpc  fortran  c++  languages 

5
간격이 고르지 않은 데이터의 FFT를 어떻게 가져 옵니까?
고속 푸리에 변환 알고리즘은 입력 포인트가 시간 영역 균등하게 있다고 가정하여 푸리에 분해를 계산합니다 . 그들이 아닌 경우 어떻게? 가변 샘플링 속도가 실제로 무엇인지 설명하기 위해 사용할 수있는 다른 알고리즘이나 FFT를 수정할 수있는 방법이 있습니까?tk=kTtk=kTt_k = kT 솔루션이 샘플이 어떻게 분포되어 있는지에 달려 있다면, 가장 관심이있는 두 가지 상황이 있습니다. ...

4
“줄리아”과학 컴퓨팅 언어 프로젝트는 얼마나 성숙합니까?
현재 사용하는 C ++ 및 Python의 (일부) 대체품으로 수치 / 시뮬레이션 모델링 프로젝트에 사용할 새 언어를 배우는 것을 고려하고 있습니다. 나는 Julia 를 만났다 . 그것이 주장하는 모든 것을 수행한다면, 모든 프로젝트에서 C ++ 과 Python 을 대체하는 데 사용할 수 있습니다 .PyPlot을 포함한 고급 과학 컴퓨팅 라이브러리 코드에 액세스하고 ...

17
표준 수치 알고리즘에 라이브러리를 사용하지 않는 것이 일반적입니까? 그 이유는 무엇입니까?
GSL 과 같은 과학 계산 라이브러리에서는 많은 수치 알고리즘 (통합, 미분, 보간, 특수 함수 등)을 사용할 수 있습니다 . 그러나 종종 이러한 기능을 "수동으로"구현 한 코드를 볼 수 있습니다. 반드시 공개 배포 용이 아닌 작은 프로그램의 경우, 계산 과학자들이 필요할 때 숫자 알고리즘을 직접 구현하는 것이 일반적입니까? 그렇다면 GSL과 같은 ...
54 libraries  c 

7
모든 계산 과학자는 어떤 핵심 기술을 가져야합니까? [닫은]
모든 과학자는 통계에 대해 약간의 상관 관계가 무엇인지, 신뢰 구간이 무엇인지 등을 알아야합니다. 마찬가지로 모든 과학자는 컴퓨팅에 대해 조금 알아야합니다. 문제는 무엇입니까? 모든 실무 과학자가 소프트웨어를 구축하고 사용하는 것에 대해 알기를 기대하는 것이 합리적입니까? 핵심 기술에 대한 우리의 목록 은 사람들 이 "구름"또는 "페타"라는 이름으로 무엇이든 다루기 전에 알아야 할 ...
52 education 

4
희소 선형 시스템 솔버를 선택할 때 어떤 지침을 따라야합니까?
스파 스 선형 시스템은 응용 분야에서 주파수가 증가함에 따라 나타납니다. 이러한 시스템을 해결하기 위해 선택할 수있는 많은 루틴이 있습니다. 최상위 수준에서는 직접 (예 : 희소 가우시안 제거 또는 Cholesky 분해, 특수 순서 알고리즘 및 다중 정면 방법) 방법과 반복적 (예 : GMRES, (bi) 공액 구배) 방법 사이에 유역이 있습니다. 직접 ...

3
유한 요소와 유한 체적 방법의 개념적 차이점은 무엇입니까?
유한 차이와 유한 체적 방법 사이에는 명백한 차이가 있습니다 (방정식의 점 정의에서 셀에 대한 적분 평균으로 이동). 그러나 FEM과 FVM은 매우 유사합니다. 그들은 세포 전체에 대해 완전한 형태와 평균을 사용합니다. FVM이 아닌 FEM 방법은 무엇입니까? 나는 FEM에 대한 약간의 배경을 읽었으며 방정식이 약한 형태로 작성되었다는 것을 이해합니다.이 방법은 FVM과 약간 ...

5
유한 차이와 유한 요소 중에서 선택할 수있는 기준은 무엇입니까
나는 유한 차분을 매우 한정된 격자에서 유한 요소의 특별한 경우로 생각하는 데 익숙합니다. 수치 적 방법으로 유한 차분 법 (FDM)과 유한 요소법 (FEM) 중에서 선택하는 방법에 대한 조건은 무엇입니까? 유한 차이 방법 (FDM)의 측면에서, 그것들은 유한 요소 방법 (FEM)보다 개념적으로 더 간단하고 구현하기 쉽다고 생각할 수 있습니다. FEM은 매우 유연하다는 ...

8
과학 소프트웨어를 문서화하는 좋은 방법은 무엇입니까?
많은 사람들이 다른 사람들이 작성한 과학 코드를 물려 받았을 때 (또는 때로는 내 자신의 작업조차도) 문서가 드물거나 존재하지 않는 것을 발견했습니다. 운이 좋으면 유익한 의견이 표시됩니다. 운이 좋으면 Doxygen 주석과 Doxyfile도있어서 함수 인터페이스와 형식이 지정된 HTML을 참조하십시오. 운이 좋으면 Doxygen 및 소스 파일 주석 외에도 PDF 설명서와 예제가 있으며 내 ...

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