최종 수정: 2025-10-06 읽기 약 6분

자주 묻는 질문

일반 질문

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:

  1. "UV 출력" 또는 "UVC 출력"에 대한 제조업체 데이터시트 확인
  2. eta = UV 출력 (W) / 전기 입력 (W)
  3. 일반적인 값:
    • 저압 램프: 0.30 - 0.40
    • 중압 램프: 0.10 - 0.20

Q: dimming은 무엇이며 언제 사용해야 합니까?

A:

  • dimming은 전력 감소 계수입니다 (1.0 = 100% 전력)
  • 사용 사례:
    • 80% 전력에서 램프 모델링: "dimming": 0.8
    • 램프 수명 종료 시나리오: "dimming": 0.7
    • 전력 최적화 연구: 다른 값으로 여러 케이스 실행

Q: waterUVT 값은 어떻게 얻습니까?

A:

  1. 254nm에서 UV 분광광도계로 측정
  2. UVT (%) → 소수: 95% UVT = 0.95
  3. 흡광도 (A)가 있는 경우: UVT = 10^(-A)
  4. 경로 길이가 중요함: 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:

  1. 좌표계 정의 (예: 반응기 중심 = 원점)
  2. lampSpecs에 램프 사양 정의 (재사용 가능)
  3. lampLayout에서 각 램프 배치:
    • lampId: 참조할 lampSpecs의 id
    • position: 램프 중심의 [x, y, z]
    • direction: 램프 축 방향 (정규화됨)

예제 - 정사각형 배열의 4개 램프 (JSON v3.0):

json
"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: 여러 옵션:

  1. 간단한 격자: Excel/Python/MATLAB을 사용하여 규칙적인 격자 생성, TXT로 저장
  2. CFD 메쉬: ANSYS, Fluent, OpenFOAM에서 CGNS로 내보내기
  3. ParaView: 대화식으로 메쉬 생성, VTU로 저장
  4. 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는:

  1. 노드 좌표 추출
  2. 각 노드에서 조사량 계산
  3. 입력된 격자 파일에 자외선 조사량을 추가하여 결과 파일 출력

출력 질문

Q: 출력 조사량의 단위는 무엇입니까?

A: 제곱미터당 와트 (W/m²) - 이것은 조사율 또는 강도입니다.

선량으로 변환:

code
선량 (J/m²) = 조사율 (W/m²) × 체류 시간 (s)

Q: ParaView에서 결과를 시각화할 수 있습니까?

A: 예:

  1. VTU 출력으로 실행: --output results.vtu
  2. ParaView에서 results.vtu 열기
  3. 필터 적용:
    • fluence_band1_254nm으로 색상 지정
    • 등선량 표면용 등고선
    • 단면용 슬라이스

Q: Python에서 결과를 후처리하려면 어떻게 합니까?

A: UVSim3D는 파이썬 Wrapper를 제공합니다. PyUVSim3D를 참고하세요. 그러나 vtu 파일을 직접 후처리 하려면 pyvista를 사용하면 됩니다.:

python
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: 예:

  1. Excel 열기
  2. 데이터 → 텍스트/CSV에서
  3. TXT 파일 선택
  4. 구분 기호: 쉼표
  5. #으로 시작하는 헤더 행 건너뛰기