Welcome, Guest
Username: Password: Remember me

TOPIC: Changing the boundary conditions over the vertical

Changing the boundary conditions over the vertical 11 years 10 months ago #6877

  • m.mahgoob
  • m.mahgoob's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 106
Hello everybody,

can one of you tell me how can I change the boundary conditions over the vertical, I want to make the bottom part of the channel as imposed boundary and the top part as a free boundary, I have tried with the limi3d subroutine but I failed. Can you please help me.

thanks
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6881

  • jmhervouet
  • jmhervouet's Avatar
Hello,

Though there is no theoretical problem, I am not sure we can do that, for example because the liquid boundaries have the same numbering as in 2D, so there are probably a lot of changes in subroutine bord3d.f. I plan to do that this year for next version. We had this problem to model an entrance of water with a wall above, and we did the whole boundary as liquid, but with a velocity profile that was zero where there was the wall. Be patient...

Regards,

Jean-Miche Hervouet
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6882

  • m.mahgoob
  • m.mahgoob's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 106
If I understood you well, the boundary will be replicated with the replication of the 2D mesh when starting a 3D computation and no possibility to make different boundaries for the different vertical levels. Actually in my case I want to have two layers of water at the boundary, one fresh and one saline, so I want to give value for the salinity to the boundary of the lower horizontal levels and zero to the upper ones
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6884

  • jmhervouet
  • jmhervouet's Avatar
Hello,

So what you want is just a profile of salinity on the vertical, this should be possible in bord3d.f, by prescribing TABORL line 399 as a function of the plane number NP, the boundary number IFRLIQ, the tracer ITRAC,... instead of using the function TR3.

Regards,

JMH
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6885

  • m.mahgoob
  • m.mahgoob's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 106
yes, that is what I need. Thanks
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 7 months ago #8131

  • viviro7
  • viviro7's Avatar
Hi
I was reading at this post and is related to the boundary condition I was looking for. I have an intake from a lake, and the water is pumped at a constant rate from the bottom of the lake up to a certain water depth. So only the bottom cells of the 3D mesh will have an open boundary with prescribed flow condition. Could you please let me know how did you approach this??

Thanks so much

Viviana
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6981

  • m.mahgoob
  • m.mahgoob's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 106
I did it this way, but it is not working

! CASE OF A PROFILE ON THE VERTICAL
IPROF=VERPROTRA(ITRAC+(IFRLIQ-1)*NTRAC)
IF(IPROF.NE.1) THEN
PROFZ=TRA_PROF_Z(IFRLIQ,NBOR2%I(K),
& AT,LT,NP,INFOGR,IPROF,ITRAC)
IF(IPROF.EQ.2.OR.IPROF.EQ.3) THEN

DO I = 1,NPOIN3
IF (Z(I).LT.-0.37) THEN
TABORL%ADR(ITRAC)%P%R(IBORD)=38.5
ELSE
TABORL%ADR(ITRAC)%P%R(IBORD)=0
ENDIF
ENDDO

ELSE
TABORL%ADR(ITRAC)%P%R(IBORD)=
& TABORL%ADR(ITRAC)%P%R(IBORD)*PROFZ
ENDIF
ENDIF
ENDIF

What do you think
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6990

  • jmhervouet
  • jmhervouet's Avatar
Hello,

You seem to be in a loop on IBORD, so I do not understand what is the loop :

DO I = 1,NPOIN3
IF (Z(I).LT.-0.37) THEN
TABORL%ADR(ITRAC)%P%R(IBORD)=38.5
ELSE
TABORL%ADR(ITRAC)%P%R(IBORD)=0
ENDIF
ENDDO

in this context , it will apply 38.5 according to the last Z(I), then according to Z(NPOIN3)... Your problem is finding the I that corresponds to IBORD and it is NBOR3%I(IBORD), so there should be no loop and a test on Z(NBOR3%I(IBORD))

Regards,

Jean-Michel Hervouet
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 10 months ago #6994

  • m.mahgoob
  • m.mahgoob's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 106
You are completely right, many thanks
The administrator has disabled public write access.

Changing the boundary conditions over the vertical 11 years 7 months ago #8145

  • pham
  • pham's Avatar
  • OFFLINE
  • Administrator
  • Posts: 1559
  • Thank you received: 602
Hi Viviana,

You can try to implement your own treatment of boundary conditions in the BORD3D subroutine.
The classical boundary conditions use the LIHBOR, LI{UVW}BO{LBS} arrays with the 2D boundary numbering and the vertical plane numbering.
With the BOUNDARY_COLOUR array that corresponds to the last column of the BOUNDARY CONDITIONS FILE before the partitionning, you can define a colour to discriminate the boundary nodes (by default, it is the number of the boundary node in the boundary node numbering, before partitionning). This number is kept after partitioning, it is very useful for parallel computations (but be sure you do not need this array for other applications, such as some standard treatments to model tides). Please search BOUNDARY_COLOUR in the manuals or in the Forum.
That may be a solution for you.

Hope this helps,

Chi-Tuan
The administrator has disabled public write access.
Moderators: pham

The open TELEMAC-MASCARET template for Joomla!2.5, the HTML 4 version.