Hello!
I have fixed planes at certain elevations above the bed (e.g. ZZ(IPOIN,2)= ZZ(IPOIN,1) + 0.01D0). When I ran this I received errors when the free surface elevation was less than the bank elevation.
I had excluded the fixed planes from mesh regulation. I.e.(using the above example) the below checks weren't done for the fixed plane:
DO IPLAN=
3,NPLAN-1
IF(TRANSF_PLANE%I(IPLAN).EQ.3) THEN
RPLS = DBLE(NPLAN-IPLAN) / DBLE(NPLAN)
RPLI = DBLE(IPLAN- 1) / DBLE(NPLAN)
DO IPOIN = 1,NPOIN2
ZFP = ZZ(IPOIN,
3)
ZSP = ZZ(IPOIN,NPLAN)
DISBOT = MIN(ZSP-ZFP,DISMIN_BOT)
DISSUR = MIN(ZSP-ZFP,DISMIN_SUR)
ZZ(IPOIN,IPLAN)=MIN( ZSP-DISSUR*RPLS,
& MAX(ZPLANE%R(IPLAN),ZFP+DISBOT*RPLI))
ENDDO
ENDIF
I altered the code to include regulation on all planes (e.g. DO IPLAN=
2,NPLAN-1...) however I received an error where the mesh elevation isn't represented well:
Channel (no regulation: correct layers but gets errors):
Channel (regulated but only free surface is shown!)
I assume this is a mesh regulation error. I changed the values of DISMIN_BOT and MIN_DZ but had no better outcome. I assigned my layers as, for example:
DO IPLAN=2,4
TRANSF_PLANE%I(IPLAN)=3
ENDDO
DO IPOIN = 1,NPOIN2
ZZ(IPOIN,2)= ZZ(IPOIN,1) + 0.01D0
...
ENDDO
Is this the correct way to apply planes in calcot? Have the new layers been assigned the TRANSF_PLANE appropriately?
Many thanks!