6-DOF ship의 trim and sinkage 계산방법에 대해서 질문드립니다.

Main Forums Flow Analysis 6-DOF ship의 trim and sinkage 계산방법에 대해서 질문드립니다.

This topic contains 2 replies, has 2 voices, and was last updated by  seoseonguk 1 year, 5 months ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #1280

    seoseonguk
    Participant

    안녕하세요. 현재 interDyMFoam으로 KCS의 trim 및 sinkage를 구하려고 하고 있습니다.

    sixDoFRigidBodyMotion을 적용하여 dynamicMeshDict를 작동시키는 과정은 완료하였습니다.

    그다음에 functions의 기능을 이용하여 저항을 구하는 것처럼

    trim과 sinkage를 구하려고 하는데 마땅한 방법이 없어서 질문드립니다.

    도움을 주시면 감사하겠습니다.

    #1305
    Curry
    Curry
    Participant

    seoseonguk님, 답변이 늦어 죄송합니다.

    하지만 사실 말씀하시는 trim (rotation about y axis), sinkage ( translation about z axis)는
    interDyMFoam 과정 중 log에 수록되어 있습니다. 실제로 시뮬레이션을 실행하는 와중, log.interDyMFoam을 살펴보면

    PIMPLE: iteration 1
    
    6-DoF rigid body motion
        Centre of rotation: (0.5 0.45 0.1)
        Centre of mass: (0.5 0.45 0.35)
        Orientation: (1 0 0 0 1 0 0 0 1)
        Linear velocity: (0 2.6309972719e-18 0)
        Angular velocity: (0 4.86288436181e-20 0)

    와 같은 정보를 확인하실 수 있습니다.
    따라서, trim과 sinkage 정보를 얻기 위해 Centre of mass 등을 파악하여야 하며 간단한 script로 도출할 수 있습니다.

    #!/bin/bash
    grep 'Centre of mass' $1 | cut -d '(' -f 2 | tr -d ")" > centreMass_Extract
    grep -e "^Time = " $1 | cut -d " " -f 3 > times_Extract
    
    paste times_Extract centreMass_Extract > cmMotion_parcial
    sed -e 's/ [ ]*/\t/g' cmMotion_parcial > cmMotion
    rm cmMotion_parcial
    rm times_Extract
    rm centreMass_Extract

    이를 실행하여 얻으시면 될 것입니다. 참고로 Orientation 벡터는 다음 사이트를 참고하여 사용하시기 바랍니다.
    Orientation

    #1333

    seoseonguk
    Participant

    Curry님, 답변을 주셔서 감사드립니다.

    현재까지는 코드를 수정하지 않고서는 log파일을 추출하는 수 밖에 없는 것 같습니다.

    그러나 위 방법으로는 만약에 nOuterCorrectors를 2 이상으로 주는 경우, 한 timeStep당 6-DOF rigid body motion의 기록이 2개 이상으로 생기기 때문에

    nOuterCorrectors를 1의 값으로 주는 경우에만 적용할 수 밖에 없는 것 같습니다.

    또한 선박의 문제를 푸는 경우, center of Mass의 높이 차를 이용하여 sinkage를 구하는 방법과

    Tokyo 2015 CFD workshop에 언급된 FP와 AP의 합의 절반을 sinkage라고 하여 계산하는 방법과 달라 이 부분에서 오차가 발생하는 것 같더군요.
    (FP와 AP의 절반은 center of Mass의 점과 다르기 때문입니다.)

    FP와 AP의 점을 시간에 따라 계산하는 방법은 sixDOFrigidBodyMotion에 center of mass를 기록하는 란과 동일하게 FP와 AP를 넣어서 wmake 하면 될 것 같습니다.

    여튼, trim과 sinkage를 구하거나 6자유도의 결과를 출력할 수 있는 utility가 있었으면 좋겠네요..

    이상입니다. 답변을 주셔서 정말 감사드립니다.

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.