자주 묻는 질문
일반 질문
Q: UVSim3D는 어떤 단위를 사용합니까?
A: 모든 입력 및 출력은 SI 단위를 사용합니다:
- 길이: 미터 (m)
- 전력: 와트 (W)
- 조사율: 제곱미터당 와트 (W/m²)
- 파장: 나노미터 (nm)
Q: fluence와 fluence rate의 차이는 무엇입니까?
A:
- Fluence rate (조사율, W/m²): 한 지점에서의 순간 UV 강도
- Fluence 또는 dose (선량, J/m²): 받은 총 에너지 = 조사율 × 체류 시간
- UVSim3D는 조사율을 계산합니다. 선량을 얻으려면 체류 시간을 곱하세요.
안내: 보다 정확한 계산은 CFD와 연동해석을 통해 입자가 받는 체류시간을 계산합니다.
Q: MPSS와 MSSS의 차이는 무엇입니까?
A:
- MPSS (Multiple Point Source Summation): 램프를 이산 점 소스로 모델링. 램프를 점 광원으로 모델링 할 수 있는 경우 보다 적합.
- MSSS (Multiple Segment Source Summation): 램프를 Segment 즉 라인으로 모델링. 대부분의 경우에 적합.
권장사항: MSSS Model을 사용하고 특수한 경우 MPSS 사용.
설정 질문
Q: 램프 효율(eta)은 어떻게 결정합니까?
A:
- "UV 출력" 또는 "UVC 출력"에 대한 제조업체 데이터시트 확인
- eta = UV 출력 (W) / 전기 입력 (W)
- 일반적인 값:
- 저압 램프: 0.30 - 0.40
- 중압 램프: 0.10 - 0.20
Q: dimming은 무엇이며 언제 사용해야 합니까?
A:
dimming은 전력 감소 계수입니다 (1.0 = 100% 전력)- 사용 사례:
- 80% 전력에서 램프 모델링:
"dimming": 0.8 - 램프 수명 종료 시나리오:
"dimming": 0.7 - 전력 최적화 연구: 다른 값으로 여러 케이스 실행
- 80% 전력에서 램프 모델링:
Q: waterUVT 값은 어떻게 얻습니까?
A:
- 254nm에서 UV 분광광도계로 측정
- UVT (%) → 소수: 95% UVT = 0.95
- 흡광도 (A)가 있는 경우: UVT = 10^(-A)
- 경로 길이가 중요함: cm당, 10cm당 등 지정
예제: 물이 UVT254 = 95%/cm인 경우:
- 1 cm 경로의 경우:
waterUVT: 0.95 - 10 cm 경로의 경우:
waterUVT: 0.60(0.95^10)
Q: 몇 개의 밴드를 사용해야 합니까?
A:
- LP 램프: VUV의 경우 2개 밴드 (185nm + 254nm), 일반 살균의 경우 1개 밴드 (254nm)
- MP 램프: 200-300nm 스펙트럼을 커버하기 위해 5-10개 밴드
- 더 많은 밴드 = 더 긴 계산 시간
Q: 여러 램프를 어떻게 배치합니까?
A:
- 좌표계 정의 (예: 반응기 중심 = 원점)
lampSpecs에 램프 사양 정의 (재사용 가능)lampLayout에서 각 램프 배치:lampId: 참조할 lampSpecs의 idposition: 램프 중심의 [x, y, z]direction: 램프 축 방향 (정규화됨)
예제 - 정사각형 배열의 4개 램프 (JSON v3.0):
"lampSpecs": [
{"id": "LP150W", "lampType": "lp", "power": 150.0, "eta": 0.35, "arcLength": 0.8, ...}
],
"lampLayout": [
{"lampId": "LP150W", "dimming": 1.0, "position": [ 0.1, 0.1, 0.5], "direction": [0, 0, 1]},
{"lampId": "LP150W", "dimming": 1.0, "position": [-0.1, 0.1, 0.5], "direction": [0, 0, 1]},
{"lampId": "LP150W", "dimming": 1.0, "position": [-0.1, -0.1, 0.5], "direction": [0, 0, 1]},
{"lampId": "LP150W", "dimming": 1.0, "position": [ 0.1, -0.1, 0.5], "direction": [0, 0, 1]}
]메쉬 질문
Q: 메쉬 파일은 어떻게 만듭니까?
A: 여러 옵션:
- 간단한 격자: Excel/Python/MATLAB을 사용하여 규칙적인 격자 생성, TXT로 저장
- CFD 메쉬: ANSYS, Fluent, OpenFOAM에서 CGNS로 내보내기
- ParaView: 대화식으로 메쉬 생성, VTU로 저장
- Python VTK:
pyvista또는vtk라이브러리 사용
Q: 메쉬는 얼마나 조밀해야 합니까?
A: 지침:
- 램프 근처 (< 5 cm): 0.1-0.5 cm 간격
- 중거리 (5-20 cm): 1-2 cm 간격
- 원거리 (> 20 cm): 2-5 cm 간격
- 일반적인 반응기: 50,000 - 500,000 포인트
Q: CFD 메쉬를 직접 사용할 수 있습니까?
A: 예, VTU, VTKHDF 또는 CGNS 형식이면 됩니다. UVSim3D는:
- 노드 좌표 추출
- 각 노드에서 조사량 계산
- 입력된 격자 파일에 자외선 조사량을 추가하여 결과 파일 출력
출력 질문
Q: 출력 조사량의 단위는 무엇입니까?
A: 제곱미터당 와트 (W/m²) - 이것은 조사율 또는 강도입니다.
선량으로 변환:
선량 (J/m²) = 조사율 (W/m²) × 체류 시간 (s)Q: ParaView에서 결과를 시각화할 수 있습니까?
A: 예:
- VTU 출력으로 실행:
--output results.vtu - ParaView에서
results.vtu열기 - 필터 적용:
fluence_band1_254nm으로 색상 지정- 등선량 표면용 등고선
- 단면용 슬라이스
Q: Python에서 결과를 후처리하려면 어떻게 합니까?
A: UVSim3D는 파이썬 Wrapper를 제공합니다. PyUVSim3D를 참고하세요. 그러나 vtu 파일을 직접 후처리 하려면 pyvista를 사용하면 됩니다.:
import pyvista as pv
import numpy as np
# VTU 결과 읽기
mesh = pv.read('results.vtu')
# 조사량 데이터 추출
fluence = mesh.point_data['fluence_band1_254nm']
# 통계
print(f"최소: {fluence.min():.2f} W/m²")
print(f"최대: {fluence.max():.2f} W/m²")
print(f"평균: {fluence.mean():.2f} W/m²")
# 선량 계산 (예: 10초 체류 시간)
dose = fluence * 10 # J/m²
mesh.point_data['dose'] = dose
# 선량 필드와 함께 저장
mesh.save('results_with_dose.vtu')Q: TXT 출력을 Excel로 가져올 수 있습니까?
A: 예:
- Excel 열기
- 데이터 → 텍스트/CSV에서
- TXT 파일 선택
- 구분 기호: 쉼표
#으로 시작하는 헤더 행 건너뛰기