Modify

Opened 5 years ago

Last modified 5 years ago

#1371 reopened defect

handle vector groups of vectors correctly in Periodic, RotatingSymmetry90, RotatingSymmetry180, etc.

Reported by: Roland Haas Owned by:
Priority: major Milestone:
Component: EinsteinToolkit thorn Version:
Keywords: RotatingSymmetry180RotatingSymmetry90 Cc:

Description

I think only the RotatingSymmetry ones need work since Peridic does not need to know what type of object it acts on. See #1236

Attachments (5)

no_local_reductions90.patch (3.4 KB) - added by Roland Haas 5 years ago.
Patch for RotatingSYmmetry90 to support groups of vectors/tensors
spheretest_octant.par (8.9 KB) - added by Roland Haas 5 years ago.
test for symmetry (requires private thorns)
vectors90.patch (17.5 KB) - added by Roland Haas 5 years ago.
actual patch
vectors90.2.patch (17.5 KB) - added by Roland Haas 5 years ago.
vectors90_interpolate.patch (599 bytes) - added by Roland Haas 5 years ago.

Download all attachments as: .zip

Change History (15)

Changed 5 years ago by Roland Haas

Attachment: no_local_reductions90.patch added

Patch for RotatingSYmmetry90 to support groups of vectors/tensors

Changed 5 years ago by Roland Haas

Attachment: spheretest_octant.par added

test for symmetry (requires private thorns)

Changed 5 years ago by Roland Haas

Attachment: vectors90.patch added

actual patch

comment:1 Changed 5 years ago by Roland Haas

Status: newreview

I attach in vectors90.patch a patch to support groups of vectors the same way reflectionsymmetry does. The parfile tests this with Luke Robert's thorn. It requires access to Zelmani. Please ignore the no_local_reductions90.patch file as I only uploaded that one accidentally.

Please comment on whether this is an acceptable way of implementing the functionality (or whether we want a separate variable "tensorcomponent" rather than all the "/ tensorlength").

comment:2 Changed 5 years ago by Erik Schnetter

Status: reviewreviewed_ok

Yes, this is a good way.

Changed 5 years ago by Roland Haas

Attachment: vectors90.2.patch added

comment:3 Changed 5 years ago by Roland Haas

removed leftover printf from patch.

comment:4 Changed 5 years ago by Roland Haas

Resolution: fixed
Status: reviewed_okclosed

Applied as rev 89 of RotatingSymmetry90.

comment:5 Changed 5 years ago by Roland Haas

Resolution: fixed
Status: closedreopened

A patch for rotatingsymmetry 180 is missing. The implementation for roatingsymmety90 has a bug in the symmetry interpolation code (boundary condition work fine).

Changed 5 years ago by Roland Haas

Attachment: vectors90_interpolate.patch added

comment:6 Changed 5 years ago by Roland Haas

Status: reopenedreview

I added a patch to correct interpolation in rotatingsymmetry90, before it would have failed (triggered an assert) if multiple vector components were interpolated at the same time. There is a very helpful comment in the code just above the assert (interpolate.c lin 886) , many thanks to whoever put the comment there.

comment:7 Changed 5 years ago by Roland Haas

Priority: minormajor

bump priority since people are actually hit by this and I am no longer sure if the assert() catches all usage cases (eg it might not catch the case where only vel[1] is interpolated). The bug manifests itself as *always* interpolating the x component of vel[] even if vel[1] is requested.

Last edited 5 years ago by Roland Haas (previous) (diff)

comment:8 Changed 5 years ago by anonymous

Reviewed ok! Please apply!

comment:9 Changed 5 years ago by pmoesta@…

Reviewed ok! Please apply!

comment:10 Changed 5 years ago by Roland Haas

Status: reviewreopened

applied as rev90 of RotatingSymmetry90. Leaving ticket open to remind someone to implement the same code in RotatingSymmetry180.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as reopened The ticket will remain with no owner.
Next status will be 'review'.
as The resolution will be set.
to The owner will be changed from (none) to the specified user.
The owner will be changed from (none) to anonymous.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.